---
Fuzzer filename: '/src/krb5/src/tests/fuzzing/fuzz_oid.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/krb5/src/tests/fuzzing/fuzz_oid.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_oid_to_str
        - gss_release_buffer
        - gss_release_oid
        - gss_str_to_oid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz_oid.c:55,5'
          Dst:             gss_oid_to_str
        - Src:             'fuzz_oid.c:56,5'
          Dst:             gss_release_buffer
        - Src:             'fuzz_oid.c:61,5'
          Dst:             gss_str_to_oid
        - Src:             'fuzz_oid.c:62,5'
          Dst:             gss_release_oid
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    explicit_bzero
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    59
      BranchProfiles:  []
      Callsites:       []
    - functionName:    interposed_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_interMech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         550
      ICount:          2282
      EdgeCount:       687
      CyclomaticComplexity: 139
      functionsReached:
        - calloc
        - k5_clear_error
        - krb5int_get_plugin_func
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:814,9'
          Dst:             calloc
        - Src:             'g_initialize.c:819,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:819,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:820,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:820,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:821,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:821,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:822,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:822,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:823,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:823,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:824,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:824,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:825,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:825,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:826,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:826,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:827,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:827,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:828,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:828,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:829,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:829,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:830,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:830,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:831,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:831,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:832,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:832,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:833,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:833,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:834,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:834,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:835,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:835,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:836,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:836,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:837,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:837,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:838,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:838,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:839,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:839,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:840,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:840,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:841,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:841,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:842,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:842,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:843,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:843,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:844,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:844,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:845,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:845,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:846,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:846,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:847,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:847,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:848,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:848,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:849,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:849,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:850,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:850,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:851,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:851,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:852,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:852,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:853,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:853,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:854,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:854,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:855,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:855,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:856,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:856,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:857,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:857,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:858,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:858,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:859,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:859,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:860,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:860,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:862,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:862,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:863,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:863,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:865,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:865,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:866,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:866,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:867,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:867,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:868,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:868,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:869,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:869,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:870,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:870,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:871,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:871,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:872,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:872,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:874,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:874,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:876,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:876,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:878,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:878,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:879,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:879,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:881,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:881,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:882,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:882,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:883,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:883,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:884,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:884,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:885,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:885,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:886,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:886,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:887,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:887,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:888,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:888,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:889,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:889,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:891,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:891,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:892,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:892,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:893,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:893,2'
          Dst:             k5_clear_error
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    197
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skip_whitespace
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1232,9'
          Dst:             __ctype_b_loc
    - functionName:    __ctype_b_loc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    33
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addConfigEntry
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          393
      EdgeCount:       95
      CyclomaticComplexity: 27
      functionsReached:
        - calloc
        - generic_gss_release_oid
        - generic_gss_str_to_oid
        - searchMechList
        - snprintf
        - strcmp
        - strdup
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1511,18'
          Dst:             strlen
        - Src:             'g_initialize.c:1512,6'
          Dst:             generic_gss_str_to_oid
        - Src:             'g_initialize.c:1517,10'
          Dst:             searchMechList
        - Src:             'g_initialize.c:1519,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:1527,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:1534,3'
          Dst:             snprintf
        - Src:             'g_initialize.c:1536,3'
          Dst:             snprintf
        - Src:             'g_initialize.c:1558,17'
          Dst:             strdup
        - Src:             'g_initialize.c:1565,22'
          Dst:             strdup
        - Src:             'g_initialize.c:1568,23'
          Dst:             strdup
        - Src:             'g_initialize.c:1571,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:1576,10'
          Dst:             calloc
        - Src:             'g_initialize.c:1578,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:1582,20'
          Dst:             strdup
        - Src:             'g_initialize.c:1583,23'
          Dst:             strdup
        - Src:             'g_initialize.c:1592,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:1597,21'
          Dst:             strdup
        - Src:             'g_initialize.c:1600,22'
          Dst:             strdup
        - Src:             'g_initialize.c:1602,17'
          Dst:             strcmp
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    107
      BranchProfiles:  []
      Callsites:       []
    - functionName:    searchMechList
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1219,7'
          Dst:             memcmp
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    109
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    73
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    145
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delimit
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1253
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - skip_whitespace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1258,9'
          Dst:             skip_whitespace
    - functionName:    delimit_ws
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1241
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __ctype_b_loc
        - skip_whitespace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1242,26'
          Dst:             __ctype_b_loc
        - Src:             'g_initialize.c:1246,9'
          Dst:             skip_whitespace
    - functionName:    loadConfigFile
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          173
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - addConfigEntry
        - delimit
        - delimit_ws
        - fclose
        - fgets
        - fopen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1274,18'
          Dst:             fopen
        - Src:             'g_initialize.c:1279,9'
          Dst:             fgets
        - Src:             'g_initialize.c:1287,9'
          Dst:             delimit_ws
        - Src:             'g_initialize.c:1290,15'
          Dst:             delimit_ws
        - Src:             'g_initialize.c:1293,10'
          Dst:             delimit_ws
        - Src:             'g_initialize.c:1298,11'
          Dst:             delimit_ws
        - Src:             'g_initialize.c:1306,11'
          Dst:             delimit
        - Src:             'g_initialize.c:1314,10'
          Dst:             delimit
        - Src:             'g_initialize.c:1319,3'
          Dst:             addConfigEntry
        - Src:             'g_initialize.c:1322,9'
          Dst:             fclose
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fgets
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_link_mtime
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - lstat
        - stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:448,6'
          Dst:             lstat
        - Src:             'g_initialize.c:452,6'
          Dst:             stat
    - functionName:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_if_changed
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          80
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - check_link_mtime
        - loadConfigFile
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:464,10'
          Dst:             check_link_mtime
        - Src:             'g_initialize.c:470,3'
          Dst:             loadConfigFile
    - functionName:    loadInterMech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          179
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - build_interMech
        - gss_release_oid_set
        - interposed_oid
        - k5_clear_error
        - krb5int_close_plugin
        - krb5int_get_plugin_func
        - krb5int_open_plugin
        - searchMechList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:941,6'
          Dst:             krb5int_open_plugin
        - Src:             'g_initialize.c:946,6'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:954,16'
          Dst:             build_interMech
        - Src:             'g_initialize.c:964,8'
          Dst:             searchMechList
        - Src:             'g_initialize.c:969,23'
          Dst:             interposed_oid
        - Src:             'g_initialize.c:976,8'
          Dst:             gss_release_oid_set
        - Src:             'g_initialize.c:983,3'
          Dst:             krb5int_close_plugin
        - Src:             'g_initialize.c:984,2'
          Dst:             k5_clear_error
    - functionName:    loadConfigFiles
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          88
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - glob
        - globfree
        - load_if_changed
        - secure_getenv
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:485,6'
          Dst:             time
        - Src:             'g_initialize.c:489,8'
          Dst:             secure_getenv
        - Src:             'g_initialize.c:491,3'
          Dst:             load_if_changed
        - Src:             'g_initialize.c:495,2'
          Dst:             load_if_changed
        - Src:             'g_initialize.c:498,6'
          Dst:             glob
        - Src:             'g_initialize.c:500,4'
          Dst:             load_if_changed
        - Src:             'g_initialize.c:502,2'
          Dst:             globfree
    - functionName:    time
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    secure_getenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    glob
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    globfree
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_mechSet
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_deprecated
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_inquire_attrs_for_mech
        - gss_release_oid_set
        - gss_test_oid_set_member
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:226,10'
          Dst:             gss_inquire_attrs_for_mech
        - Src:             'g_initialize.c:228,3'
          Dst:             gss_test_oid_set_member
        - Src:             'g_initialize.c:233,3'
          Dst:             gss_release_oid_set
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_mechglue_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - add_error_table
        - gss_krb5int_lib_init
        - gss_spnegoint_lib_init
        - gssint_mecherrmap_init
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:114,2'
          Dst:             add_error_table
        - Src:             'g_initialize.c:116,8'
          Dst:             k5_mutex_finish_init
        - Src:             'g_initialize.c:119,8'
          Dst:             k5_mutex_finish_init
        - Src:             'g_initialize.c:124,8'
          Dst:             gss_krb5int_lib_init
        - Src:             'g_initialize.c:127,8'
          Dst:             gss_spnegoint_lib_init
        - Src:             'g_initialize.c:132,8'
          Dst:             gssint_mecherrmap_init
    - functionName:    gssint_mechglue_init__aux
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_mechglue_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:102,1'
          Dst:             gssint_mechglue_init
    - functionName:    build_dynamicMech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         897
      ICount:          3542
      EdgeCount:       1104
      CyclomaticComplexity: 209
      functionsReached:
        - __assert_fail
        - calloc
        - k5_clear_error
        - krb5int_get_plugin_func
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:702,24'
          Dst:             calloc
        - Src:             'g_initialize.c:707,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:707,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:708,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:708,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:709,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:709,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:710,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:710,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:711,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:711,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:712,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:712,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:713,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:713,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:714,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:714,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:715,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:715,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:716,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:716,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:717,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:717,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:718,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:718,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:719,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:719,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:720,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:720,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:721,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:721,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:722,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:722,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:723,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:723,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:724,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:724,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:725,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:725,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:726,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:726,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:727,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:727,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:728,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:728,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:729,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:729,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:730,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:730,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:731,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:731,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:732,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:732,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:733,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:733,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:734,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:734,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:735,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:735,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:736,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:736,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:737,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:737,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:738,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:738,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:739,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:739,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:740,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:740,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:741,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:741,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:742,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:742,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:743,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:743,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:744,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:744,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:745,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:745,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:746,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:746,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:747,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:747,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:748,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:748,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:750,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:750,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:751,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:751,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:753,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:753,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:754,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:754,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:755,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:755,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:756,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:756,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:757,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:757,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:758,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:758,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:759,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:759,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:760,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:760,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:762,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:762,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:764,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:764,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:766,9'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:766,9'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:767,9'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:767,9'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:769,9'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:769,9'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:770,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:770,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:771,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:771,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:772,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:772,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:773,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:773,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:774,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:774,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:775,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:775,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:776,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:776,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:777,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:777,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:779,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:779,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:780,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:780,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:781,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:781,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:783,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:783,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:784,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:784,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:785,2'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:785,2'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:787,2'
          Dst:             __assert_fail
    - functionName:    gss_indicate_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          106
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - build_mechSet
        - generic_gss_copy_oid_set
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - prune_deprecated
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:284,17'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:288,6'
          Dst:             build_mechSet
        - Src:             'g_initialize.c:295,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:296,11'
          Dst:             generic_gss_copy_oid_set
        - Src:             'g_initialize.c:297,2'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:300,3'
          Dst:             prune_deprecated
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    316
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_mechglue_initialize_library
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - k5_once
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:164,9'
          Dst:             k5_once
        - Src:             'g_initialize.c:164,9'
          Dst:             __assert_fail
    - functionName:    build_mechSet
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         26
      ICount:          179
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
        - free_mechSet
        - k5_mutex_lock
        - k5_mutex_unlock
        - updateMechList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:336,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:338,2'
          Dst:             updateMechList
        - Src:             'g_initialize.c:344,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:347,2'
          Dst:             free_mechSet
        - Src:             'g_initialize.c:360,14'
          Dst:             calloc
        - Src:             'g_initialize.c:362,4'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:363,4'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:391,5'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:392,5'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:401,2'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:402,2'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    prune_deprecated
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - gssalloc_free
        - is_deprecated
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:249,11'
          Dst:             is_deprecated
        - Src:             'g_initialize.c:252,3'
          Dst:             gssalloc_free
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    48
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    48
      BranchProfiles:  []
      Callsites:       []
    - functionName:    updateMechList
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - loadConfigFiles
        - loadInterMech
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:527,2'
          Dst:             loadConfigFiles
        - Src:             'g_initialize.c:534,4'
          Dst:             loadInterMech
    - functionName:    gssint_get_mechanism
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          282
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - build_dynamicMech
        - gssint_mechglue_initialize_library
        - k5_clear_error
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5int_close_plugin
        - krb5int_get_plugin_func
        - krb5int_open_plugin
        - memcmp
        - searchMechList
        - updateMechList
      functionUses:    71
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1133,6'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:1136,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:1143,7'
          Dst:             memcmp
        - Src:             'g_initialize.c:1144,4'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1147,7'
          Dst:             memcmp
        - Src:             'g_initialize.c:1148,4'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1158,2'
          Dst:             updateMechList
        - Src:             'g_initialize.c:1160,10'
          Dst:             searchMechList
        - Src:             'g_initialize.c:1164,3'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1170,3'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1176,6'
          Dst:             krb5int_open_plugin
        - Src:             'g_initialize.c:1178,3'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:1179,3'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1183,6'
          Dst:             krb5int_get_plugin_func
        - Src:             'g_initialize.c:1189,3'
          Dst:             k5_clear_error
        - Src:             'g_initialize.c:1190,17'
          Dst:             build_dynamicMech
        - Src:             'g_initialize.c:1194,10'
          Dst:             krb5int_close_plugin
        - Src:             'g_initialize.c:1195,3'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:1201,2'
          Dst:             k5_mutex_unlock
    - functionName:    gssint_make_public_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          94
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - generic_gss_add_oid_set_member
        - generic_gss_create_empty_oid_set
        - generic_gss_release_oid_set
        - gssint_get_public_oid
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1094,11'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'g_initialize.c:1099,16'
          Dst:             gssint_get_public_oid
        - Src:             'g_initialize.c:1102,12'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'g_initialize.c:1105,11'
          Dst:             generic_gss_release_oid_set
    - functionName:    gssint_get_public_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1053
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          162
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - memcmp
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1061,6'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:1064,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:1069,7'
          Dst:             memcmp
        - Src:             'g_initialize.c:1071,9'
          Dst:             memcmp
        - Src:             'g_initialize.c:1077,2'
          Dst:             k5_mutex_unlock
    - functionName:    initMechList
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - updateMechList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:546,3'
          Dst:             updateMechList
    - functionName:    gssint_select_mech_type
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          191
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - gssint_mechglue_initialize_library
        - initMechList
        - k5_mutex_lock
        - k5_mutex_unlock
        - memcmp
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:1014,6'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:1017,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:1021,2'
          Dst:             initMechList
        - Src:             'g_initialize.c:1027,7'
          Dst:             memcmp
        - Src:             'g_initialize.c:1035,8'
          Dst:             memcmp
        - Src:             'g_initialize.c:1045,2'
          Dst:             k5_mutex_unlock
    - functionName:    releaseMechInfo
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          181
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - generic_gss_release_oid
        - krb5int_close_plugin
        - zapfree
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:573,3'
          Dst:             generic_gss_release_oid
        - Src:             'g_initialize.c:575,3'
          Dst:             zapfree
        - Src:             'g_initialize.c:577,3'
          Dst:             krb5int_close_plugin
        - Src:             'g_initialize.c:579,3'
          Dst:             generic_gss_release_oid
    - functionName:    gssint_register_mechinfo
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         49
      ICount:          322
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - calloc
        - releaseMechInfo
        - strdup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:596,11'
          Dst:             calloc
        - Src:             'g_initialize.c:603,32'
          Dst:             calloc
        - Src:             'g_initialize.c:605,3'
          Dst:             releaseMechInfo
        - Src:             'g_initialize.c:617,22'
          Dst:             strdup
        - Src:             'g_initialize.c:619,4'
          Dst:             releaseMechInfo
        - Src:             'g_initialize.c:624,22'
          Dst:             strdup
        - Src:             'g_initialize.c:626,4'
          Dst:             releaseMechInfo
        - Src:             'g_initialize.c:631,25'
          Dst:             strdup
        - Src:             'g_initialize.c:633,4'
          Dst:             releaseMechInfo
        - Src:             'g_initialize.c:638,23'
          Dst:             strdup
        - Src:             'g_initialize.c:640,4'
          Dst:             releaseMechInfo
    - functionName:    gssint_get_modOptions
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - searchMechList
        - strdup
        - updateMechList
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:421,6'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:425,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:426,2'
          Dst:             updateMechList
        - Src:             'g_initialize.c:428,15'
          Dst:             searchMechList
        - Src:             'g_initialize.c:430,3'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:435,16'
          Dst:             strdup
        - Src:             'g_initialize.c:436,2'
          Dst:             k5_mutex_unlock
    - functionName:    gss_release_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_initialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          136
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - generic_gss_release_oid
        - gssint_mecherrmap_map
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'g_initialize.c:183,18'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'g_initialize.c:187,2'
          Dst:             k5_mutex_lock
        - Src:             'g_initialize.c:202,5'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:205,4'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_initialize.c:209,2'
          Dst:             k5_mutex_unlock
        - Src:             'g_initialize.c:211,10'
          Dst:             generic_gss_release_oid
    - functionName:    val_inq_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_inquire_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          285
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - gss_release_name
        - gssint_convert_name_to_union_name
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - val_inq_ctx_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_context.c:92,14'
          Dst:             val_inq_ctx_args
        - Src:             'g_inq_context.c:109,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_context.c:128,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_inq_context.c:136,15'
          Dst:             gssint_convert_name_to_union_name
        - Src:             'g_inq_context.c:151,15'
          Dst:             gssint_convert_name_to_union_name
        - Src:             'g_inq_context.c:156,14'
          Dst:             gss_release_name
        - Src:             'g_inq_context.c:167,15'
          Dst:             gssint_get_public_oid
    - functionName:    gss_inquire_sec_context_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_context_oid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          135
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_context_oid.c:57,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_context_oid.c:66,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_inquire_cred_by_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          212
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - gssint_convert_name_to_union_name
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_cred.c:173,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_inq_cred.c:177,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_cred.c:184,17'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_inq_cred.c:188,19'
          Dst:             gssint_get_public_oid
        - Src:             'g_inq_cred.c:196,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_inq_cred.c:204,11'
          Dst:             gssint_convert_name_to_union_name
        - Src:             'g_inq_cred.c:209,6'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_inquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          344
      EdgeCount:       86
      CyclomaticComplexity: 25
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_name
        - gss_release_oid_set
        - gssint_convert_name_to_union_name
        - gssint_get_mechanism
        - gssint_make_public_oid_set
        - gssint_mecherrmap_map
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_cred.c:78,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_cred.c:82,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_cred.c:97,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_inq_cred.c:103,15'
          Dst:             gssint_convert_name_to_union_name
        - Src:             'g_inq_cred.c:107,3'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_inq_cred.c:120,15'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_inq_cred.c:126,15'
          Dst:             gss_create_empty_oid_set
        - Src:             'g_inq_cred.c:130,15'
          Dst:             gss_add_oid_set_member
        - Src:             'g_inq_cred.c:142,9'
          Dst:             gss_release_oid_set
        - Src:             'g_inq_cred.c:145,9'
          Dst:             gss_release_name
    - functionName:    append_to_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_cred_oid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - gss_add_buffer_set_member
        - gss_create_empty_buffer_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_cred_oid.c:46,11'
          Dst:             gss_create_empty_buffer_set
        - Src:             'g_inq_cred_oid.c:54,11'
          Dst:             gss_add_buffer_set_member
    - functionName:    gss_inquire_cred_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_cred_oid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          213
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - append_to_buffer_set
        - gss_release_buffer_set
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_cred_oid.c:97,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_cred_oid.c:113,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_inq_cred_oid.c:122,11'
          Dst:             append_to_buffer_set
        - Src:             'g_inq_cred_oid.c:123,2'
          Dst:             gss_release_buffer_set
        - Src:             'g_inq_cred_oid.c:129,2'
          Dst:             gss_release_buffer_set
    - functionName:    gss_inquire_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          211
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - generic_gss_copy_oid
        - generic_gss_release_oid
        - gss_release_oid
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_name.c:70,18'
          Dst:             generic_gss_copy_oid
        - Src:             'g_inq_name.c:77,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_name.c:79,9'
          Dst:             gss_release_oid
        - Src:             'g_inq_name.c:84,9'
          Dst:             gss_release_oid
        - Src:             'g_inq_name.c:94,9'
          Dst:             generic_gss_release_oid
        - Src:             'g_inq_name.c:95,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    mech_supports_nametype
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_inquire_names_for_mech
        - gss_release_oid_set
        - gss_test_oid_set_member
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_names.c:114,14'
          Dst:             gss_inquire_names_for_mech
        - Src:             'g_inq_names.c:117,14'
          Dst:             gss_test_oid_set_member
        - Src:             'g_inq_names.c:118,12'
          Dst:             gss_release_oid_set
    - functionName:    gss_inquire_names_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          137
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_names.c:63,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_inq_names.c:68,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_inq_names.c:73,19'
          Dst:             gssint_get_public_oid
        - Src:             'g_inq_names.c:77,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_inq_mechs4name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_inquire_mechs_for_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_inq_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          142
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_display_name
        - gss_indicate_mechs
        - gss_release_buffer
        - gss_release_oid_set
        - mech_supports_nametype
        - val_inq_mechs4name_args
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_inq_names.c:133,14'
          Dst:             val_inq_mechs4name_args
        - Src:             'g_inq_names.c:137,14'
          Dst:             gss_display_name
        - Src:             'g_inq_names.c:141,14'
          Dst:             gss_indicate_mechs
        - Src:             'g_inq_names.c:144,14'
          Dst:             gss_create_empty_oid_set
        - Src:             'g_inq_names.c:149,6'
          Dst:             mech_supports_nametype
        - Src:             'g_inq_names.c:150,15'
          Dst:             gss_add_oid_set_member
        - Src:             'g_inq_names.c:160,12'
          Dst:             gss_release_buffer
        - Src:             'g_inq_names.c:161,12'
          Dst:             gss_release_oid_set
        - Src:             'g_inq_names.c:162,12'
          Dst:             gss_release_oid_set
    - functionName:    gss_map_name_to_any
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_map_name_to_any.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          155
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_map_name_to_any.c:61,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_map_name_to_any.c:74,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssspi_mech_invoke
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mech_invoke.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mech_invoke.c:54,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_mech_invoke.c:59,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_mech_invoke.c:65,11'
          Dst:             gssint_get_public_oid
        - Src:             'g_mech_invoke.c:69,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    testMechAttr
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generic_gss_test_oid_set_member
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:36,9'
          Dst:             generic_gss_test_oid_set_member
    - functionName:    gss_display_mech_attr
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_display_mech_attr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:237,12'
          Dst:             generic_gss_display_mech_attr
    - functionName:    testMechAttrsKnown
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          63
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - testMechAttr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:83,18'
          Dst:             testMechAttr
    - functionName:    testMechAttrsOffered
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          108
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - testMechAttr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:57,18'
          Dst:             testMechAttr
        - Src:             'g_mechattr.c:64,17'
          Dst:             testMechAttr
    - functionName:    gss_inquire_attrs_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          251
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - generic_gss_copy_oid_set
        - generic_gss_create_empty_oid_set
        - gss_release_oid_set
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:177,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_mechattr.c:181,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_mechattr.c:186,23'
          Dst:             gssint_get_public_oid
        - Src:             'g_mechattr.c:191,13'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_mechattr.c:199,18'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'g_mechattr.c:202,17'
          Dst:             gss_release_oid_set
        - Src:             'g_mechattr.c:211,22'
          Dst:             generic_gss_copy_oid_set
        - Src:             'g_mechattr.c:217,22'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'g_mechattr.c:220,13'
          Dst:             gss_release_oid_set
    - functionName:    gss_indicate_mechs_by_attrs
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_mechattr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          188
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - generic_gss_create_empty_oid_set
        - gss_add_oid_set_member
        - gss_indicate_mechs
        - gss_inquire_attrs_for_mech
        - gss_release_oid_set
        - testMechAttrsKnown
        - testMechAttrsOffered
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_mechattr.c:112,14'
          Dst:             gss_indicate_mechs
        - Src:             'g_mechattr.c:116,14'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'g_mechattr.c:124,18'
          Dst:             gss_inquire_attrs_for_mech
        - Src:             'g_mechattr.c:129,13'
          Dst:             testMechAttrsOffered
        - Src:             'g_mechattr.c:131,13'
          Dst:             testMechAttrsKnown
        - Src:             'g_mechattr.c:132,22'
          Dst:             gss_add_oid_set_member
        - Src:             'g_mechattr.c:135,17'
          Dst:             gss_release_oid_set
        - Src:             'g_mechattr.c:136,17'
          Dst:             gss_release_oid_set
        - Src:             'g_mechattr.c:141,9'
          Dst:             gss_release_oid_set
        - Src:             'g_mechattr.c:142,9'
          Dst:             gss_release_oid_set
        - Src:             'g_mechattr.c:149,5'
          Dst:             gss_release_oid_set
    - functionName:    gssspi_query_mechanism_info
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_negoex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          98
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_negoex.c:220,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_negoex.c:223,19'
          Dst:             gssint_get_public_oid
        - Src:             'g_negoex.c:225,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_negoex.c:234,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssspi_exchange_meta_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_negoex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          313
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - gssint_create_union_context
        - gssint_delete_internal_sec_context
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_negoex.c:144,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_negoex.c:147,19'
          Dst:             gssint_get_public_oid
        - Src:             'g_negoex.c:149,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_negoex.c:156,25'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_negoex.c:163,13'
          Dst:             memcmp
        - Src:             'g_negoex.c:166,22'
          Dst:             gssint_import_internal_name
        - Src:             'g_negoex.c:180,9'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_negoex.c:186,9'
          Dst:             __assert_fail
        - Src:             'g_negoex.c:187,18'
          Dst:             gssint_create_union_context
        - Src:             'g_negoex.c:199,15'
          Dst:             gssint_release_internal_name
        - Src:             'g_negoex.c:203,15'
          Dst:             gssint_delete_internal_sec_context
    - functionName:    gssspi_query_meta_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_negoex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          316
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - gssint_create_union_context
        - gssint_delete_internal_sec_context
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_negoex.c:61,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_negoex.c:64,19'
          Dst:             gssint_get_public_oid
        - Src:             'g_negoex.c:66,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_negoex.c:73,25'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_negoex.c:80,13'
          Dst:             memcmp
        - Src:             'g_negoex.c:83,22'
          Dst:             gssint_import_internal_name
        - Src:             'g_negoex.c:96,9'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_negoex.c:102,9'
          Dst:             __assert_fail
        - Src:             'g_negoex.c:103,18'
          Dst:             gssint_create_union_context
        - Src:             'g_negoex.c:115,15'
          Dst:             gssint_release_internal_name
        - Src:             'g_negoex.c:119,15'
          Dst:             gssint_delete_internal_sec_context
    - functionName:    gss_oid_equal
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:134,12'
          Dst:             memcmp
    - functionName:    gss_str_to_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          115
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - generic_gss_str_to_oid
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:120,14'
          Dst:             generic_gss_str_to_oid
        - Src:             'g_oid_ops.c:122,2'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_oid_to_str
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          119
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - generic_gss_oid_to_str
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:101,14'
          Dst:             generic_gss_oid_to_str
        - Src:             'g_oid_ops.c:103,2'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_test_oid_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - generic_gss_test_oid_set_member
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:83,12'
          Dst:             generic_gss_test_oid_set_member
    - functionName:    gss_add_oid_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          102
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - generic_gss_add_oid_set_member
        - gssint_mecherrmap_map_errcode
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:65,14'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'g_oid_ops.c:67,2'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_create_empty_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          84
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - generic_gss_create_empty_oid_set
        - gssint_mecherrmap_map_errcode
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'g_oid_ops.c:46,14'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'g_oid_ops.c:48,2'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_pseudo_random
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          169
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_prf.c:72,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_prf.c:83,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_process_context_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_process_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          146
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_process_context.c:60,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_process_context.c:70,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_release_buffer
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_rel_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - gssalloc_free
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             'g_rel_buffer.c:48,6'
          Dst:             gssalloc_free
    - functionName:    gss_release_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_rel_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          195
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'g_rel_cred.c:67,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_rel_cred.c:79,7'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_release_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_rel_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          151
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - gss_release_oid
        - gssalloc_free
        - gssint_release_internal_name
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'g_rel_name.c:64,2'
          Dst:             gss_release_oid
        - Src:             'g_rel_name.c:68,6'
          Dst:             gssalloc_free
        - Src:             'g_rel_name.c:73,2'
          Dst:             gssint_release_internal_name
        - Src:             'g_rel_name.c:75,2'
          Dst:             gss_release_oid
    - functionName:    gss_release_any_name_mapping
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_rel_name_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_rel_name_mapping.c:58,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_rel_name_mapping.c:70,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_release_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_rel_oid_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_release_oid_set
      functionUses:    37
      BranchProfiles:  []
      Callsites:
        - Src:             'g_rel_oid_set.c:38,12'
          Dst:             generic_gss_release_oid_set
    - functionName:    oidToSaslName
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_saslname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          290
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_make_checksum_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_saslname.c:61,14'
          Dst:             krb5_k_make_checksum_iov
    - functionName:    gss_inquire_mech_for_saslname
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_saslname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          205
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - gss_indicate_mechs
        - gss_release_oid_set
        - gssint_get_mechanism
        - memcmp
        - oidToSaslName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_saslname.c:188,14'
          Dst:             gss_indicate_mechs
        - Src:             'g_saslname.c:196,16'
          Dst:             gssint_get_mechanism
        - Src:             'g_saslname.c:206,13'
          Dst:             oidToSaslName
        - Src:             'g_saslname.c:208,13'
          Dst:             memcmp
        - Src:             'g_saslname.c:217,5'
          Dst:             gss_release_oid_set
    - functionName:    oidToSaslNameAlloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_saslname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gss_release_buffer
        - oidToSaslName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_saslname.c:99,14'
          Dst:             oidToSaslName
        - Src:             'g_saslname.c:101,9'
          Dst:             gss_release_buffer
    - functionName:    gss_inquire_saslname_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_saslname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          188
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
        - oidToSaslNameAlloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_saslname.c:139,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_saslname.c:144,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_saslname.c:150,23'
          Dst:             gssint_get_public_oid
        - Src:             'g_saslname.c:155,13'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_saslname.c:160,22'
          Dst:             oidToSaslNameAlloc
    - functionName:    gssint_wrap_size_limit_iov_shim
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          161
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gssint_mecherrmap_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_seal.c:181,5'
          Dst:             __assert_fail
        - Src:             'g_seal.c:188,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_wrap_size_limit
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          151
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - gssint_wrap_size_limit_iov_shim
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_seal.c:233,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_seal.c:244,24'
          Dst:             gssint_wrap_size_limit_iov_shim
        - Src:             'g_seal.c:251,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_seal
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_wrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_seal.c:141,12'
          Dst:             gss_wrap
    - functionName:    gss_wrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          163
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - gssint_wrap_aead
        - val_wrap_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_seal.c:82,14'
          Dst:             val_wrap_args
        - Src:             'g_seal.c:97,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_seal.c:109,17'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_seal.c:112,22'
          Dst:             gssint_wrap_aead
    - functionName:    val_wrap_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_set_sec_context_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_context_option.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          171
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_create_union_context
        - gssint_delete_internal_sec_context
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_context_option.c:59,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_context_option.c:61,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_context_option.c:75,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_set_context_option.c:80,11'
          Dst:             gssint_create_union_context
        - Src:             'g_set_context_option.c:83,6'
          Dst:             gssint_delete_internal_sec_context
    - functionName:    gss_set_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_name_attr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_name_attr.c:53,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_name_attr.c:66,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_set_neg_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_neg_mechs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          148
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_neg_mechs.c:50,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_neg_mechs.c:64,6'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_sign
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_sign.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_get_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_sign.c:115,10'
          Dst:             gss_get_mic
    - functionName:    gss_get_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_sign.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_get_mic_args
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_sign.c:77,14'
          Dst:             val_get_mic_args
        - Src:             'g_sign.c:90,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_sign.c:101,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_get_mic_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_sign.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          83
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_cred_fallback
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          89
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gssint_get_public_oid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_store_cred.c:27,24'
          Dst:             gssint_get_public_oid
    - functionName:    val_store_cred_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          148
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_store_cred.c:80,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_store_cred.c:87,3'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_store_cred_into
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          367
      EdgeCount:       82
      CyclomaticComplexity: 25
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_mecherrmap_map
        - gssint_select_mech_type
        - store_cred_fallback
        - val_store_cred_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_store_cred.c:123,17'
          Dst:             val_store_cred_args
        - Src:             'g_store_cred.c:145,18'
          Dst:             gssint_select_mech_type
        - Src:             'g_store_cred.c:151,10'
          Dst:             gssint_get_mechanism
        - Src:             'g_store_cred.c:163,15'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_store_cred.c:167,18'
          Dst:             store_cred_fallback
        - Src:             'g_store_cred.c:175,7'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_store_cred.c:186,10'
          Dst:             gssint_get_mechanism
        - Src:             'g_store_cred.c:198,15'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_store_cred.c:202,18'
          Dst:             store_cred_fallback
        - Src:             'g_store_cred.c:208,7'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_store_cred.c:218,19'
          Dst:             gss_create_empty_oid_set
        - Src:             'g_store_cred.c:225,18'
          Dst:             gss_add_oid_set_member
    - functionName:    gss_store_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_store_cred_into
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_store_cred.c:101,9'
          Dst:             gss_store_cred_into
    - functionName:    gss_unseal
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unseal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_unwrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unseal.c:108,13'
          Dst:             gss_unwrap
    - functionName:    gss_unwrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unseal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          219
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - gssint_unwrap_aead
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unseal.c:71,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_unseal.c:82,3'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_unseal.c:84,15'
          Dst:             gssint_unwrap_aead
    - functionName:    val_unwrap_aead_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_unwrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          88
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - gssint_get_mechanism
        - gssint_unwrap_aead
        - val_unwrap_aead_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unwrap_aead.c:168,14'
          Dst:             val_unwrap_aead_args
        - Src:             'g_unwrap_aead.c:182,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_unwrap_aead.c:187,12'
          Dst:             gssint_unwrap_aead
    - functionName:    gssint_unwrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gssint_mecherrmap_map
        - gssint_unwrap_aead_iov_shim
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unwrap_aead.c:125,5'
          Dst:             __assert_fail
        - Src:             'g_unwrap_aead.c:126,5'
          Dst:             __assert_fail
        - Src:             'g_unwrap_aead.c:139,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_unwrap_aead.c:141,11'
          Dst:             gssint_unwrap_aead_iov_shim
    - functionName:    gssint_unwrap_aead_iov_shim
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          171
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gss_release_buffer
        - gssint_mecherrmap_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unwrap_aead.c:93,5'
          Dst:             __assert_fail
        - Src:             'g_unwrap_aead.c:102,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_unwrap_aead.c:105,6'
          Dst:             gss_release_buffer
    - functionName:    gss_verify_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_unwrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unwrap_iov.c:117,14'
          Dst:             val_unwrap_iov_args
        - Src:             'g_unwrap_iov.c:126,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_unwrap_iov.c:134,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_unwrap_iov_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_unwrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_unwrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          119
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_unwrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_unwrap_iov.c:72,14'
          Dst:             val_unwrap_iov_args
        - Src:             'g_unwrap_iov.c:85,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_unwrap_iov.c:97,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_verify
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_verify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_verify_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_verify.c:87,10'
          Dst:             gss_verify_mic
    - functionName:    gss_verify_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_verify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          151
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_verify.c:61,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_verify.c:72,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    val_wrap_aead_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_wrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - gssint_get_mechanism
        - gssint_wrap_aead
        - val_wrap_aead_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_aead.c:236,14'
          Dst:             val_wrap_aead_args
        - Src:             'g_wrap_aead.c:250,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_wrap_aead.c:254,12'
          Dst:             gssint_wrap_aead
    - functionName:    gssint_wrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          129
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - gssint_mecherrmap_map
        - gssint_wrap_aead_iov_shim
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_aead.c:189,5'
          Dst:             __assert_fail
        - Src:             'g_wrap_aead.c:190,5'
          Dst:             __assert_fail
        - Src:             'g_wrap_aead.c:202,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_wrap_aead.c:204,11'
          Dst:             gssint_wrap_aead_iov_shim
    - functionName:    gssint_wrap_aead_iov_shim
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          427
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - gss_release_buffer
        - gssalloc_malloc
        - gssint_mecherrmap_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_aead.c:110,5'
          Dst:             __assert_fail
        - Src:             'g_wrap_aead.c:116,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_wrap_aead.c:128,36'
          Dst:             gssalloc_malloc
        - Src:             'g_wrap_aead.c:162,5'
          Dst:             __assert_fail
        - Src:             'g_wrap_aead.c:164,5'
          Dst:             __assert_fail
        - Src:             'g_wrap_aead.c:172,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_wrap_aead.c:173,2'
          Dst:             gss_release_buffer
    - functionName:    gss_release_iov_buffer
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          107
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - gss_release_buffer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_iov.c:235,15'
          Dst:             gss_release_buffer
    - functionName:    gss_get_mic_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_wrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_iov.c:199,14'
          Dst:             val_wrap_iov_args
        - Src:             'g_wrap_iov.c:208,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_wrap_iov.c:216,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_wrap_iov_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_get_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_wrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_iov.c:169,14'
          Dst:             val_wrap_iov_args
        - Src:             'g_wrap_iov.c:178,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_wrap_iov.c:186,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_wrap_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          123
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_wrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_iov.c:123,14'
          Dst:             val_wrap_iov_args
        - Src:             'g_wrap_iov.c:137,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_wrap_iov.c:150,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_wrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_wrap_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          123
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_wrap_iov_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_wrap_iov.c:73,14'
          Dst:             val_wrap_iov_args
        - Src:             'g_wrap_iov.c:87,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_wrap_iov.c:100,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_pname_to_uid
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/gssd_pname_to_uid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          155
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - getpwnam_r
        - gss_localname
        - gss_release_buffer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssd_pname_to_uid.c:205,13'
          Dst:             gss_localname
        - Src:             'gssd_pname_to_uid.c:213,20'
          Dst:             getpwnam_r
        - Src:             'gssd_pname_to_uid.c:222,9'
          Dst:             gss_release_buffer
    - functionName:    gss_localname
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/gssd_pname_to_uid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          287
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - attr_localname
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'gssd_pname_to_uid.c:147,17'
          Dst:             gssint_select_mech_type
        - Src:             'gssd_pname_to_uid.c:150,16'
          Dst:             gssint_get_mechanism
        - Src:             'gssd_pname_to_uid.c:152,16'
          Dst:             gssint_get_mechanism
        - Src:             'gssd_pname_to_uid.c:160,11'
          Dst:             memcmp
        - Src:             'gssd_pname_to_uid.c:161,17'
          Dst:             gssint_import_internal_name
        - Src:             'gssd_pname_to_uid.c:173,23'
          Dst:             gssint_get_public_oid
        - Src:             'gssd_pname_to_uid.c:176,13'
          Dst:             gssint_mecherrmap_map
        - Src:             'gssd_pname_to_uid.c:180,17'
          Dst:             attr_localname
        - Src:             'gssd_pname_to_uid.c:183,9'
          Dst:             gssint_release_internal_name
    - functionName:    getpwnam_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    attr_localname
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/gssd_pname_to_uid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          127
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - gss_release_buffer
        - gssint_mecherrmap_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssd_pname_to_uid.c:96,9'
          Dst:             gssint_mecherrmap_map
        - Src:             'gssd_pname_to_uid.c:110,9'
          Dst:             gss_release_buffer
        - Src:             'gssd_pname_to_uid.c:112,9'
          Dst:             gss_release_buffer
    - functionName:    no_ci_flags
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_strdup
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssalloc_malloc
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:122,19'
          Dst:             strlen
        - Src:             '../../../include/gssapi/gssapi_alloc.h:123,18'
          Dst:             gssalloc_malloc
    - functionName:    krb5_gss_inquire_attrs_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          402
      EdgeCount:       116
      CyclomaticComplexity: 26
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:697,13'
          Dst:             gss_create_empty_oid_set
        - Src:             'gssapi_krb5.c:708,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:709,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:710,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:711,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:712,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:713,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:714,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:715,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:716,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:717,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:718,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:719,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:720,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:721,5'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:723,9'
          Dst:             memcmp
        - Src:             'gssapi_krb5.c:724,9'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:725,9'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:726,17'
          Dst:             memcmp
        - Src:             'gssapi_krb5.c:727,9'
          Dst:             gss_add_oid_set_member
        - Src:             'gssapi_krb5.c:732,9'
          Dst:             gss_release_oid_set
    - functionName:    krb5_gss_inquire_mech_for_saslname
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          99
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:638,9'
          Dst:             memcmp
        - Src:             'gssapi_krb5.c:644,16'
          Dst:             memcmp
    - functionName:    krb5_gss_inquire_saslname_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          121
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_g_make_string_buffer
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:661,9'
          Dst:             memcmp
        - Src:             'gssapi_krb5.c:662,14'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_krb5.c:663,14'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_krb5.c:664,14'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_krb5.c:669,14'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_krb5.c:670,14'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_krb5.c:671,14'
          Dst:             gssint_g_make_string_buffer
    - functionName:    krb5_gssspi_mech_invoke
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:611,13'
          Dst:             memcmp
    - functionName:    krb5_gssspi_set_cred_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          152
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - krb5_gss_validate_cred
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:543,24'
          Dst:             krb5_gss_validate_cred
        - Src:             'gssapi_krb5.c:550,13'
          Dst:             memcmp
    - functionName:    krb5_gss_inquire_cred_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          151
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - krb5_gss_validate_cred
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:438,20'
          Dst:             krb5_gss_validate_cred
        - Src:             'gssapi_krb5.c:444,13'
          Dst:             memcmp
    - functionName:    krb5_gss_authorize_localname
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          130
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5memdup0
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_kuserok
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:786,10'
          Dst:             memcmp
        - Src:             'gssapi_krb5.c:792,12'
          Dst:             krb5_gss_init_context
        - Src:             'gssapi_krb5.c:798,12'
          Dst:             k5memdup0
        - Src:             'gssapi_krb5.c:801,9'
          Dst:             krb5_free_context
        - Src:             'gssapi_krb5.c:805,15'
          Dst:             krb5_kuserok
        - Src:             'gssapi_krb5.c:808,5'
          Dst:             krb5_free_context
    - functionName:    krb5_gss_localname
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          78
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gssalloc_strdup
        - krb5_aname_to_localname
        - krb5_free_context
        - krb5_gss_init_context
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:748,12'
          Dst:             krb5_gss_init_context
        - Src:             'gssapi_krb5.c:756,12'
          Dst:             krb5_aname_to_localname
        - Src:             'gssapi_krb5.c:760,9'
          Dst:             krb5_free_context
        - Src:             'gssapi_krb5.c:765,5'
          Dst:             krb5_free_context
        - Src:             'gssapi_krb5.c:766,24'
          Dst:             gssalloc_strdup
        - Src:             'gssapi_krb5.c:767,25'
          Dst:             strlen
    - functionName:    gss_krb5int_initialize_library
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1120
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_mechglue_initialize_library
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:1120,12'
          Dst:             gssint_mechglue_initialize_library
    - functionName:    gss_krb5int_lib_fini
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_destroy
        - krb5int_key_delete
        - remove_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:1100,5'
          Dst:             remove_error_table
        - Src:             'gssapi_krb5.c:1102,5'
          Dst:             krb5int_key_delete
        - Src:             'gssapi_krb5.c:1103,5'
          Dst:             krb5int_key_delete
        - Src:             'gssapi_krb5.c:1104,5'
          Dst:             krb5int_key_delete
        - Src:             'gssapi_krb5.c:1106,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'gssapi_krb5.c:1109,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    gss_iakerbmechglue_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1010
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_register_mechinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:1008,5'
          Dst:             gssint_register_mechinfo
    - functionName:    gss_krb5mechglue_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_register_mechinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:1022,5'
          Dst:             gssint_register_mechinfo
        - Src:             'gssapi_krb5.c:1026,5'
          Dst:             gssint_register_mechinfo
        - Src:             'gssapi_krb5.c:1030,5'
          Dst:             gssint_register_mechinfo
    - functionName:    krb5_gss_inquire_sec_context_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          155
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:385,13'
          Dst:             memcmp
    - functionName:    krb5_gss_set_sec_context_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_krb5int_lib_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1085
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          104
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached:
        - add_error_table
        - gss_iakerbmechglue_init
        - gss_krb5mechglue_init
        - k5_mutex_finish_init
        - krb5_gss_delete_error_info
        - krb5int_key_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:1053,5'
          Dst:             add_error_table
        - Src:             'gssapi_krb5.c:1056,11'
          Dst:             k5_mutex_finish_init
        - Src:             'gssapi_krb5.c:1060,11'
          Dst:             krb5int_key_register
        - Src:             'gssapi_krb5.c:1063,11'
          Dst:             krb5int_key_register
        - Src:             'gssapi_krb5.c:1066,11'
          Dst:             krb5int_key_register
        - Src:             'gssapi_krb5.c:1066,11'
          Dst:             krb5_gss_delete_error_info
        - Src:             'gssapi_krb5.c:1071,11'
          Dst:             k5_mutex_finish_init
        - Src:             'gssapi_krb5.c:1076,11'
          Dst:             gss_krb5mechglue_init
        - Src:             'gssapi_krb5.c:1079,11'
          Dst:             gss_iakerbmechglue_init
    - functionName:    kg_set_ccache_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_getspecific
        - krb5int_setspecific
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:290,20'
          Dst:             strdup
        - Src:             'gssapi_krb5.c:297,22'
          Dst:             krb5int_getspecific
        - Src:             'gssapi_krb5.c:301,12'
          Dst:             krb5int_setspecific
    - functionName:    kg_get_ccache_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_cc_default_name
        - krb5_free_context
        - krb5_gss_init_context
        - krb5int_getspecific
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:261,22'
          Dst:             krb5int_getspecific
        - Src:             'gssapi_krb5.c:263,21'
          Dst:             strdup
        - Src:             'gssapi_krb5.c:267,15'
          Dst:             krb5_gss_init_context
        - Src:             'gssapi_krb5.c:270,20'
          Dst:             krb5_cc_default_name
        - Src:             'gssapi_krb5.c:271,42'
          Dst:             strdup
        - Src:             'gssapi_krb5.c:273,9'
          Dst:             krb5_free_context
    - functionName:    kg_caller_provided_ccache_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_getspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:244,14'
          Dst:             krb5int_getspecific
    - functionName:    kg_sync_ccache_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_cc_set_default_name
        - krb5int_getspecific
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:228,49'
          Dst:             krb5int_getspecific
        - Src:             'gssapi_krb5.c:227,15'
          Dst:             krb5_cc_set_default_name
    - functionName:    kg_get_defcred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_gss_acquire_cred
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_krb5.c:202,18'
          Dst:             krb5_gss_acquire_cred
    - functionName:    iakerb_tkt_creds_ctx
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          161
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - krb5_authdata_export_authdata
        - krb5_free_authdata
        - krb5_timeofday
        - krb5_tkt_creds_init
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:529,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:530,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:538,16'
          Dst:             krb5_timeofday
        - Src:             'iakerb.c:542,31'
          Dst:             ts_incr
        - Src:             'iakerb.c:546,16'
          Dst:             krb5_authdata_export_authdata
        - Src:             'iakerb.c:554,12'
          Dst:             krb5_tkt_creds_init
        - Src:             'iakerb.c:559,5'
          Dst:             krb5_free_authdata
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_init_creds_ctx
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          197
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - krb5_get_init_creds_opt_alloc
        - krb5_get_init_creds_opt_set_out_ccache
        - krb5_get_init_creds_opt_set_tkt_life
        - krb5_init_creds_init
        - krb5_init_creds_set_keytab
        - krb5_init_creds_set_password
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:474,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:475,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:477,12'
          Dst:             krb5_get_init_creds_opt_alloc
        - Src:             'iakerb.c:482,9'
          Dst:             krb5_get_init_creds_opt_set_tkt_life
        - Src:             'iakerb.c:484,12'
          Dst:             krb5_get_init_creds_opt_set_out_ccache
        - Src:             'iakerb.c:489,12'
          Dst:             krb5_init_creds_init
        - Src:             'iakerb.c:500,16'
          Dst:             krb5_init_creds_set_password
        - Src:             'iakerb.c:503,16'
          Dst:             krb5_init_creds_set_keytab
    - functionName:    iakerb_rd_error
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_error
        - krb5_rd_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:109,11'
          Dst:             krb5_rd_error
        - Src:             'iakerb.c:117,5'
          Dst:             krb5_free_error
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_der_get_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - k5_input_get_byte
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:123,11'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:124,15'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:131,17'
          Dst:             k5_input_set_status
        - Src:             '../../../include/k5-der.h:134,32'
          Dst:             k5_input_get_byte
    - functionName:    k5_der_get_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_der_get_taglen
        - k5_input_get_bytes
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:160,10'
          Dst:             k5_der_get_taglen
        - Src:             '../../../include/k5-der.h:162,13'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-der.h:165,5'
          Dst:             k5_input_init
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_make_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          202
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - encode_krb5_iakerb_header
        - gssalloc_malloc
        - gssint_g_make_token_header
        - gssint_g_token_size
        - iakerb_save_token
        - k5_buf_add_len
        - k5_buf_init_fixed
        - krb5_free_data
        - realloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:290,12'
          Dst:             encode_krb5_iakerb_header
        - Src:             'iakerb.c:297,9'
          Dst:             realloc
        - Src:             'iakerb.c:308,17'
          Dst:             gssint_g_token_size
        - Src:             'iakerb.c:309,20'
          Dst:             gssalloc_malloc
        - Src:             'iakerb.c:315,5'
          Dst:             k5_buf_init_fixed
        - Src:             'iakerb.c:317,5'
          Dst:             gssint_g_make_token_header
        - Src:             'iakerb.c:318,5'
          Dst:             k5_buf_add_len
        - Src:             'iakerb.c:319,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:321,12'
          Dst:             iakerb_save_token
        - Src:             'iakerb.c:327,5'
          Dst:             krb5_free_data
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    58
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_save_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:191,9'
          Dst:             realloc
    - functionName:    iakerb_mk_error
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_anonymous_principal
        - krb5_mk_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:97,40'
          Dst:             krb5_anonymous_principal
        - Src:             'iakerb.c:99,12'
          Dst:             krb5_mk_error
    - functionName:    iakerb_acceptor_realm
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          164
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - empty_data
        - gss_release_buffer
        - iakerb_make_token
        - iakerb_mk_error
        - krb5_free_data_contents
        - krb5_free_default_realm
        - krb5_get_default_realm
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:340,23'
          Dst:             empty_data
        - Src:             'iakerb.c:340,45'
          Dst:             empty_data
        - Src:             'iakerb.c:349,15'
          Dst:             krb5_get_default_realm
        - Src:             'iakerb.c:352,19'
          Dst:             iakerb_mk_error
        - Src:             'iakerb.c:357,21'
          Dst:             string2data
        - Src:             'iakerb.c:361,11'
          Dst:             iakerb_make_token
        - Src:             'iakerb.c:367,9'
          Dst:             gss_release_buffer
        - Src:             'iakerb.c:368,5'
          Dst:             krb5_free_default_realm
        - Src:             'iakerb.c:369,5'
          Dst:             krb5_free_data_contents
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    iakerb_parse_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          200
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - decode_krb5_iakerb_header
        - gssint_g_verify_token_header
        - k5_der_get_value
        - k5_input_get_uint16_be
        - k5_input_init
        - krb5_free_iakerb_header
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:223,5'
          Dst:             k5_input_init
        - Src:             'iakerb.c:224,10'
          Dst:             gssint_g_verify_token_header
        - Src:             'iakerb.c:225,9'
          Dst:             k5_input_get_uint16_be
        - Src:             'iakerb.c:233,10'
          Dst:             k5_der_get_value
        - Src:             'iakerb.c:237,12'
          Dst:             make_data
        - Src:             'iakerb.c:238,12'
          Dst:             decode_krb5_iakerb_header
        - Src:             'iakerb.c:253,16'
          Dst:             make_data
        - Src:             'iakerb.c:254,5'
          Dst:             __assert_fail
        - Src:             'iakerb.c:258,5'
          Dst:             krb5_free_iakerb_header
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    iakerb_gss_get_mic_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1390
      functionLinenumberEnd: 1398
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_get_mic_iov_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1396,12'
          Dst:             krb5_gss_get_mic_iov_length
    - functionName:    iakerb_gss_verify_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1376
      functionLinenumberEnd: 1384
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_verify_mic_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1382,12'
          Dst:             krb5_gss_verify_mic_iov
    - functionName:    iakerb_gss_get_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1362
      functionLinenumberEnd: 1370
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_get_mic_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1368,12'
          Dst:             krb5_gss_get_mic_iov
    - functionName:    iakerb_gss_pseudo_random
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_pseudo_random
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1354,12'
          Dst:             krb5_gss_pseudo_random
    - functionName:    iakerb_gss_wrap_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1334
      functionLinenumberEnd: 1342
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_wrap_iov_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1340,12'
          Dst:             krb5_gss_wrap_iov_length
    - functionName:    iakerb_gss_unwrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1319
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_unwrap_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1325,12'
          Dst:             krb5_gss_unwrap_iov
    - functionName:    iakerb_gss_wrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1305
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_wrap_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1311,12'
          Dst:             krb5_gss_wrap_iov
    - functionName:    iakerb_gss_set_sec_context_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_gss_set_sec_context_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1297,12'
          Dst:             krb5_gss_set_sec_context_option
    - functionName:    iakerb_gss_inquire_sec_context_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1276
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_inquire_sec_context_by_oid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1282,12'
          Dst:             krb5_gss_inquire_sec_context_by_oid
    - functionName:    iakerb_gss_verify_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1261
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_verify_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1267,12'
          Dst:             krb5_gss_verify_mic
    - functionName:    iakerb_gss_get_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_get_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1253,12'
          Dst:             krb5_gss_get_mic
    - functionName:    iakerb_gss_wrap_size_limit
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1241
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_wrap_size_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1239,12'
          Dst:             krb5_gss_wrap_size_limit
    - functionName:    iakerb_gss_inquire_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          199
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - krb5_gss_inquire_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1211,11'
          Dst:             krb5_gss_inquire_context
    - functionName:    iakerb_gss_import_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - iakerb_alloc_context
        - krb5_gss_delete_sec_context
        - krb5_gss_import_sec_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1157,11'
          Dst:             krb5_gss_import_sec_context
        - Src:             'iakerb.c:1165,9'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'iakerb.c:1169,12'
          Dst:             iakerb_alloc_context
        - Src:             'iakerb.c:1171,9'
          Dst:             krb5_gss_delete_sec_context
    - functionName:    iakerb_alloc_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - iakerb_release_context
        - k5alloc
        - krb5_gss_init_context
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:785,11'
          Dst:             k5alloc
        - Src:             'iakerb.c:795,12'
          Dst:             krb5_gss_init_context
        - Src:             'iakerb.c:803,9'
          Dst:             iakerb_release_context
    - functionName:    iakerb_release_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_context
        - krb5_free_data_contents
        - krb5_get_init_creds_opt_free
        - krb5_gss_delete_sec_context
        - krb5_gss_release_cred
        - krb5_init_creds_free
        - krb5_tkt_creds_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:71,5'
          Dst:             krb5_gss_release_cred
        - Src:             'iakerb.c:72,5'
          Dst:             krb5_init_creds_free
        - Src:             'iakerb.c:73,5'
          Dst:             krb5_tkt_creds_free
        - Src:             'iakerb.c:74,5'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'iakerb.c:75,5'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:76,5'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'iakerb.c:77,5'
          Dst:             krb5_free_context
    - functionName:    iakerb_gss_export_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - iakerb_release_context
        - krb5_gss_export_sec_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1137,11'
          Dst:             krb5_gss_export_sec_context
        - Src:             'iakerb.c:1140,9'
          Dst:             iakerb_release_context
    - functionName:    iakerb_gss_context_time
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_context_time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1120,12'
          Dst:             krb5_gss_context_time
    - functionName:    iakerb_gss_process_context_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1101
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_process_context_token
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1107,12'
          Dst:             krb5_gss_process_context_token
    - functionName:    iakerb_gss_wrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_wrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1092,12'
          Dst:             krb5_gss_wrap
    - functionName:    iakerb_gss_unwrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_gss_unwrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:1077,12'
          Dst:             krb5_gss_unwrap
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    iakerb_initiator_step
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          537
      EdgeCount:       97
      CyclomaticComplexity: 24
      functionsReached:
        - __assert_fail
        - dgettext
        - empty_data
        - gss_release_buffer
        - iakerb_init_creds_ctx
        - iakerb_make_token
        - iakerb_parse_token
        - iakerb_rd_error
        - iakerb_save_token
        - iakerb_tkt_creds_ctx
        - kg_cred_set_initial_refresh
        - krb5_clear_error_message
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_gss_save_error_string
        - krb5_init_creds_free
        - krb5_init_creds_get_times
        - krb5_init_creds_step
        - krb5_tkt_creds_free
        - krb5_tkt_creds_get_times
        - krb5_tkt_creds_step
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iakerb.c:615,5'
          Branch Sides:    []
      Callsites:
        - Src:             'iakerb.c:579,20'
          Dst:             empty_data
        - Src:             'iakerb.c:579,40'
          Dst:             empty_data
        - Src:             'iakerb.c:580,23'
          Dst:             empty_data
        - Src:             'iakerb.c:580,52'
          Dst:             empty_data
        - Src:             'iakerb.c:592,16'
          Dst:             iakerb_parse_token
        - Src:             'iakerb.c:597,16'
          Dst:             iakerb_save_token
        - Src:             'iakerb.c:602,20'
          Dst:             iakerb_rd_error
        - Src:             'iakerb.c:605,41'
          Dst:             dgettext
        - Src:             'iakerb.c:605,17'
          Dst:             krb5_gss_save_error_string
        - Src:             'iakerb.c:619,20'
          Dst:             iakerb_make_token
        - Src:             'iakerb.c:630,9'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:632,24'
          Dst:             empty_data
        - Src:             'iakerb.c:638,20'
          Dst:             iakerb_init_creds_ctx
        - Src:             'iakerb.c:643,16'
          Dst:             krb5_init_creds_step
        - Src:             'iakerb.c:649,17'
          Dst:             krb5_clear_error_message
        - Src:             'iakerb.c:654,13'
          Dst:             krb5_init_creds_get_times
        - Src:             'iakerb.c:655,13'
          Dst:             kg_cred_set_initial_refresh
        - Src:             'iakerb.c:658,13'
          Dst:             krb5_init_creds_free
        - Src:             'iakerb.c:664,14'
          Dst:             empty_data
        - Src:             'iakerb.c:668,20'
          Dst:             iakerb_tkt_creds_ctx
        - Src:             'iakerb.c:673,16'
          Dst:             krb5_tkt_creds_step
        - Src:             'iakerb.c:678,13'
          Dst:             krb5_tkt_creds_get_times
        - Src:             'iakerb.c:681,13'
          Dst:             krb5_tkt_creds_free
        - Src:             'iakerb.c:693,9'
          Dst:             __assert_fail
        - Src:             'iakerb.c:694,16'
          Dst:             iakerb_make_token
        - Src:             'iakerb.c:699,9'
          Dst:             gss_release_buffer
        - Src:             'iakerb.c:700,5'
          Dst:             krb5_free_data
        - Src:             'iakerb.c:701,5'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:702,5'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:703,5'
          Dst:             krb5_free_data_contents
    - functionName:    dgettext
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    143
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_get_initial_state
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          225
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - kg_cred_time_to_refresh
        - krb5_authdata_export_authdata
        - krb5_free_authdata
        - krb5_free_creds
        - krb5_get_credentials
        - krb5_timeofday
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:733,16'
          Dst:             krb5_authdata_export_authdata
        - Src:             'iakerb.c:744,16'
          Dst:             krb5_timeofday
        - Src:             'iakerb.c:748,34'
          Dst:             ts_incr
        - Src:             'iakerb.c:752,30'
          Dst:             kg_cred_time_to_refresh
        - Src:             'iakerb.c:758,12'
          Dst:             krb5_get_credentials
        - Src:             'iakerb.c:765,9'
          Dst:             krb5_free_creds
        - Src:             'iakerb.c:769,5'
          Dst:             krb5_free_authdata
    - functionName:    iakerb_gss_init_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 1063
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          375
      EdgeCount:       82
      CyclomaticComplexity: 23
      functionsReached:
        - iakerb_alloc_context
        - iakerb_get_initial_state
        - iakerb_gss_acquire_cred
        - iakerb_initiator_step
        - iakerb_make_exts
        - iakerb_release_context
        - k5_mutex_unlock
        - kg_cred_resolve
        - krb5_gss_init_sec_context_ext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:956,16'
          Dst:             iakerb_alloc_context
        - Src:             'iakerb.c:962,28'
          Dst:             iakerb_gss_acquire_cred
        - Src:             'iakerb.c:979,20'
          Dst:             kg_cred_resolve
        - Src:             'iakerb.c:989,16'
          Dst:             iakerb_get_initial_state
        - Src:             'iakerb.c:1000,16'
          Dst:             iakerb_initiator_step
        - Src:             'iakerb.c:1018,13'
          Dst:             k5_mutex_unlock
        - Src:             'iakerb.c:1022,9'
          Dst:             iakerb_make_exts
        - Src:             'iakerb.c:1028,24'
          Dst:             krb5_gss_init_sec_context_ext
        - Src:             'iakerb.c:1057,9'
          Dst:             k5_mutex_unlock
        - Src:             'iakerb.c:1059,9'
          Dst:             iakerb_release_context
    - functionName:    iakerb_make_exts
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_acceptor_step
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          319
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - decode_krb5_error
        - empty_data
        - gss_release_buffer
        - iakerb_acceptor_realm
        - iakerb_make_token
        - iakerb_mk_error
        - iakerb_parse_token
        - iakerb_save_token
        - krb5_free_data_contents
        - krb5_free_error
        - krb5_sendto_kdc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:385,25'
          Dst:             empty_data
        - Src:             'iakerb.c:385,47'
          Dst:             empty_data
        - Src:             'iakerb.c:386,23'
          Dst:             empty_data
        - Src:             'iakerb.c:399,12'
          Dst:             iakerb_parse_token
        - Src:             'iakerb.c:403,12'
          Dst:             iakerb_save_token
        - Src:             'iakerb.c:409,16'
          Dst:             iakerb_acceptor_realm
        - Src:             'iakerb.c:418,16'
          Dst:             krb5_sendto_kdc
        - Src:             'iakerb.c:423,20'
          Dst:             decode_krb5_error
        - Src:             'iakerb.c:427,13'
          Dst:             krb5_free_error
        - Src:             'iakerb.c:429,17'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:430,25'
          Dst:             empty_data
        - Src:             'iakerb.c:441,16'
          Dst:             iakerb_mk_error
        - Src:             'iakerb.c:447,12'
          Dst:             iakerb_make_token
        - Src:             'iakerb.c:451,9'
          Dst:             gss_release_buffer
        - Src:             'iakerb.c:453,5'
          Dst:             krb5_free_data_contents
        - Src:             'iakerb.c:454,5'
          Dst:             krb5_free_data_contents
    - functionName:    iakerb_is_iakerb_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssint_g_verify_token_header
        - k5_input_get_uint16_be
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:832,5'
          Dst:             k5_input_init
        - Src:             'iakerb.c:833,12'
          Dst:             gssint_g_verify_token_header
        - Src:             'iakerb.c:834,9'
          Dst:             k5_input_get_uint16_be
    - functionName:    iakerb_gss_accept_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          244
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - iakerb_acceptor_step
        - iakerb_alloc_context
        - iakerb_is_iakerb_token
        - iakerb_make_exts
        - iakerb_release_context
        - krb5_gss_accept_sec_context_ext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:865,16'
          Dst:             iakerb_alloc_context
        - Src:             'iakerb.c:872,9'
          Dst:             iakerb_is_iakerb_token
        - Src:             'iakerb.c:879,16'
          Dst:             iakerb_acceptor_step
        - Src:             'iakerb.c:897,9'
          Dst:             iakerb_make_exts
        - Src:             'iakerb.c:899,24'
          Dst:             krb5_gss_accept_sec_context_ext
        - Src:             'iakerb.c:921,13'
          Dst:             iakerb_release_context
    - functionName:    iakerb_gss_delete_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iakerb_release_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:822,5'
          Dst:             iakerb_release_context
    - functionName:    iakerb_verify_finished
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - decode_krb5_iakerb_finished
        - krb5_free_iakerb_finished
        - krb5_k_verify_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:169,12'
          Dst:             decode_krb5_iakerb_finished
        - Src:             'iakerb.c:173,12'
          Dst:             krb5_k_verify_checksum
        - Src:             'iakerb.c:178,5'
          Dst:             krb5_free_iakerb_finished
    - functionName:    iakerb_make_finished
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/iakerb.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - encode_krb5_iakerb_finished
        - krb5_free_checksum_contents
        - krb5_k_make_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iakerb.c:141,12'
          Dst:             krb5_k_make_checksum
        - Src:             'iakerb.c:146,12'
          Dst:             encode_krb5_iakerb_finished
        - Src:             'iakerb.c:148,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    json_to_authdata_element
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - check_element
        - k5_json_array_length
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_string_unbase64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:291,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:294,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:297,9'
          Dst:             check_element
        - Src:             'import_cred.c:300,9'
          Dst:             check_element
        - Src:             'import_cred.c:307,19'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:308,9'
          Dst:             k5_json_string_unbase64
    - functionName:    check_element
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_array_get
        - k5_json_get_tid
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:44,9'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:45,13'
          Dst:             k5_json_get_tid
    - functionName:    json_to_address
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - check_element
        - k5_json_array_length
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_string_unbase64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:222,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:225,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:228,9'
          Dst:             check_element
        - Src:             'import_cred.c:231,9'
          Dst:             check_element
        - Src:             'import_cred.c:238,22'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:239,9'
          Dst:             k5_json_string_unbase64
    - functionName:    json_to_authdata
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - json_to_authdata_element
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_get_tid
        - krb5_free_authdata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:328,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:330,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:333,11'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:334,16'
          Dst:             calloc
        - Src:             'import_cred.c:336,38'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:336,13'
          Dst:             json_to_authdata_element
        - Src:             'import_cred.c:345,5'
          Dst:             krb5_free_authdata
    - functionName:    json_to_addresses
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - json_to_address
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_get_tid
        - krb5_free_addresses
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:260,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:262,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:265,11'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:266,13'
          Dst:             calloc
        - Src:             'import_cred.c:268,29'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:268,13'
          Dst:             json_to_address
        - Src:             'import_cred.c:276,5'
          Dst:             krb5_free_addresses
    - functionName:    json_to_keyblock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - check_element
        - k5_json_array_length
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_string_unbase64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:190,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:193,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:196,9'
          Dst:             check_element
        - Src:             'import_cred.c:199,25'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:201,9'
          Dst:             check_element
        - Src:             'import_cred.c:204,9'
          Dst:             k5_json_string_unbase64
    - functionName:    json_to_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          287
      EdgeCount:       56
      CyclomaticComplexity: 19
      functionsReached:
        - check_element
        - json_to_addresses
        - json_to_authdata
        - json_to_keyblock
        - json_to_principal
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_bool_value
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_string_unbase64
        - krb5_free_cred_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:361,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:364,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:367,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:367,9'
          Dst:             json_to_principal
        - Src:             'import_cred.c:371,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:371,9'
          Dst:             json_to_principal
        - Src:             'import_cred.c:375,26'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:375,9'
          Dst:             json_to_keyblock
        - Src:             'import_cred.c:378,9'
          Dst:             check_element
        - Src:             'import_cred.c:381,29'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:383,9'
          Dst:             check_element
        - Src:             'import_cred.c:386,30'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:388,9'
          Dst:             check_element
        - Src:             'import_cred.c:391,28'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:393,9'
          Dst:             check_element
        - Src:             'import_cred.c:396,31'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:398,9'
          Dst:             check_element
        - Src:             'import_cred.c:401,22'
          Dst:             k5_json_bool_value
        - Src:             'import_cred.c:403,9'
          Dst:             check_element
        - Src:             'import_cred.c:406,27'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:408,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:408,9'
          Dst:             json_to_addresses
        - Src:             'import_cred.c:412,9'
          Dst:             check_element
        - Src:             'import_cred.c:415,9'
          Dst:             k5_json_string_unbase64
        - Src:             'import_cred.c:420,9'
          Dst:             check_element
        - Src:             'import_cred.c:423,9'
          Dst:             k5_json_string_unbase64
        - Src:             'import_cred.c:428,35'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:428,9'
          Dst:             json_to_authdata
        - Src:             'import_cred.c:436,5'
          Dst:             krb5_free_cred_contents
    - functionName:    json_to_principal
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_get_tid
        - k5_json_string_utf8
        - krb5_parse_name
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:70,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:72,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:74,34'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:74,9'
          Dst:             krb5_parse_name
    - functionName:    json_to_optional_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_get_tid
        - k5_json_string_utf8
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:56,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:58,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:60,26'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:60,19'
          Dst:             strdup
    - functionName:    json_to_etypes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - check_element
        - k5_json_array_length
        - k5_json_get_tid
        - k5_json_number_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:89,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:91,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:94,11'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:95,14'
          Dst:             calloc
        - Src:             'import_cred.c:97,13'
          Dst:             check_element
        - Src:             'import_cred.c:100,21'
          Dst:             k5_json_number_value
    - functionName:    json_to_ccache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - json_to_creds
        - json_to_principal
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_get_tid
        - k5_json_string_utf8
        - krb5_cc_destroy
        - krb5_cc_initialize
        - krb5_cc_new_unique
        - krb5_cc_resolve
        - krb5_cc_store_cred
        - krb5_free_cred_contents
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:456,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:458,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:460,41'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:460,16'
          Dst:             krb5_cc_resolve
        - Src:             'import_cred.c:465,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:468,11'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:474,9'
          Dst:             krb5_cc_new_unique
        - Src:             'import_cred.c:476,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:476,9'
          Dst:             json_to_principal
        - Src:             'import_cred.c:478,11'
          Dst:             krb5_cc_initialize
        - Src:             'import_cred.c:479,5'
          Dst:             krb5_free_principal
        - Src:             'import_cred.c:485,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:485,13'
          Dst:             json_to_creds
        - Src:             'import_cred.c:487,15'
          Dst:             krb5_cc_store_cred
        - Src:             'import_cred.c:488,9'
          Dst:             krb5_free_cred_contents
        - Src:             'import_cred.c:498,11'
          Dst:             krb5_cc_destroy
    - functionName:    json_to_rcache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_get_tid
        - k5_json_string_utf8
        - k5_rc_resolve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:170,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:172,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:174,40'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:174,9'
          Dst:             k5_rc_resolve
    - functionName:    json_to_keytab
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_get_tid
        - k5_json_string_utf8
        - krb5_kt_resolve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:154,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:156,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:158,34'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:158,9'
          Dst:             krb5_kt_resolve
    - functionName:    json_to_kgname
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - calloc
        - json_to_optional_string
        - json_to_principal
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_get_tid
        - k5_mutex_init
        - kg_release_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:119,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:121,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:124,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:126,12'
          Dst:             calloc
        - Src:             'import_cred.c:129,9'
          Dst:             k5_mutex_init
        - Src:             'import_cred.c:134,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:134,9'
          Dst:             json_to_principal
        - Src:             'import_cred.c:136,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:136,9'
          Dst:             json_to_optional_string
        - Src:             'import_cred.c:138,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:138,9'
          Dst:             json_to_optional_string
        - Src:             'import_cred.c:145,5'
          Dst:             kg_release_name
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    json_to_kgcred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          289
      EdgeCount:       56
      CyclomaticComplexity: 19
      functionsReached:
        - calloc
        - check_element
        - json_to_ccache
        - json_to_etypes
        - json_to_keytab
        - json_to_kgname
        - json_to_optional_string
        - json_to_principal
        - json_to_rcache
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_bool_value
        - k5_json_number_value
        - k5_mutex_init
        - krb5_gss_release_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:514,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:517,12'
          Dst:             calloc
        - Src:             'import_cred.c:520,9'
          Dst:             k5_mutex_init
        - Src:             'import_cred.c:525,9'
          Dst:             check_element
        - Src:             'import_cred.c:528,19'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:530,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:530,9'
          Dst:             json_to_kgname
        - Src:             'import_cred.c:533,36'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:533,9'
          Dst:             json_to_principal
        - Src:             'import_cred.c:537,9'
          Dst:             check_element
        - Src:             'import_cred.c:540,30'
          Dst:             k5_json_bool_value
        - Src:             'import_cred.c:542,9'
          Dst:             check_element
        - Src:             'import_cred.c:545,25'
          Dst:             k5_json_bool_value
        - Src:             'import_cred.c:547,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:547,9'
          Dst:             json_to_keytab
        - Src:             'import_cred.c:550,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:550,9'
          Dst:             json_to_rcache
        - Src:             'import_cred.c:553,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:553,9'
          Dst:             json_to_ccache
        - Src:             'import_cred.c:558,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:558,9'
          Dst:             json_to_keytab
        - Src:             'import_cred.c:562,9'
          Dst:             check_element
        - Src:             'import_cred.c:565,22'
          Dst:             k5_json_bool_value
        - Src:             'import_cred.c:567,9'
          Dst:             check_element
        - Src:             'import_cred.c:570,20'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:572,9'
          Dst:             check_element
        - Src:             'import_cred.c:575,26'
          Dst:             k5_json_number_value
        - Src:             'import_cred.c:577,24'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:577,9'
          Dst:             json_to_etypes
        - Src:             'import_cred.c:580,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:580,9'
          Dst:             json_to_optional_string
        - Src:             'import_cred.c:587,11'
          Dst:             krb5_gss_release_cred
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_gss_import_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          142
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - check_element
        - json_to_kgcred
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_decode
        - k5_json_get_tid
        - k5_json_release
        - k5_json_string_utf8
        - k5memdup0
        - krb5_free_context
        - krb5_gss_init_context
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'import_cred.c:604,11'
          Dst:             krb5_gss_init_context
        - Src:             'import_cred.c:611,12'
          Dst:             k5memdup0
        - Src:             'import_cred.c:617,9'
          Dst:             k5_json_decode
        - Src:             'import_cred.c:621,9'
          Dst:             k5_json_get_tid
        - Src:             'import_cred.c:624,9'
          Dst:             k5_json_array_length
        - Src:             'import_cred.c:626,11'
          Dst:             check_element
        - Src:             'import_cred.c:628,16'
          Dst:             k5_json_string_utf8
        - Src:             'import_cred.c:628,9'
          Dst:             strcmp
        - Src:             'import_cred.c:630,33'
          Dst:             k5_json_array_get
        - Src:             'import_cred.c:630,9'
          Dst:             json_to_kgcred
        - Src:             'import_cred.c:637,5'
          Dst:             k5_json_release
        - Src:             'import_cred.c:638,5'
          Dst:             krb5_free_context
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    import_name_composite
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_authdata_context_free
        - krb5_authdata_context_init
        - krb5_authdata_import_attributes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_name.c:63,12'
          Dst:             krb5_authdata_context_init
        - Src:             'import_name.c:70,12'
          Dst:             krb5_authdata_import_attributes
        - Src:             'import_name.c:75,9'
          Dst:             krb5_authdata_context_free
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    parse_hostbased
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          124
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - memchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_name.c:97,10'
          Dst:             memchr
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iakerb_gss_import_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - import_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'import_name.c:361,12'
          Dst:             import_name
    - functionName:    import_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         180
      ICount:          1170
      EdgeCount:       241
      CyclomaticComplexity: 63
      functionsReached:
        - atoi
        - getpwuid_r
        - import_name_composite
        - k5alloc
        - k5memdup0
        - kg_init_name
        - krb5_anonymous_principal
        - krb5_authdata_context_free
        - krb5_build_principal_ext
        - krb5_copy_principal
        - krb5_free_context
        - krb5_free_principal
        - krb5_gss_init_context
        - krb5_gss_save_error_info
        - krb5_parse_name_flags
        - krb5_sname_to_principal
        - memcmp
        - parse_hostbased
        - strncpy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'import_name.c:241,13'
          Branch Sides:    []
      Callsites:
        - Src:             'import_name.c:145,12'
          Dst:             krb5_gss_init_context
        - Src:             'import_name.c:150,10'
          Dst:             memcmp
        - Src:             'import_name.c:151,10'
          Dst:             memcmp
        - Src:             'import_name.c:153,16'
          Dst:             parse_hostbased
        - Src:             'import_name.c:163,16'
          Dst:             krb5_sname_to_principal
        - Src:             'import_name.c:168,17'
          Dst:             memcmp
        - Src:             'import_name.c:179,16'
          Dst:             krb5_copy_principal
        - Src:             'import_name.c:183,16'
          Dst:             memcmp
        - Src:             'import_name.c:184,45'
          Dst:             krb5_anonymous_principal
        - Src:             'import_name.c:184,16'
          Dst:             krb5_copy_principal
        - Src:             'import_name.c:189,16'
          Dst:             memcmp
        - Src:             'import_name.c:190,16'
          Dst:             krb5_build_principal_ext
        - Src:             'import_name.c:205,15'
          Dst:             k5memdup0
        - Src:             'import_name.c:213,13'
          Dst:             memcmp
        - Src:             'import_name.c:214,13'
          Dst:             memcmp
        - Src:             'import_name.c:216,20'
          Dst:             memcmp
        - Src:             'import_name.c:220,20'
          Dst:             memcmp
        - Src:             'import_name.c:223,17'
          Dst:             getpwuid_r
        - Src:             'import_name.c:227,20'
          Dst:             memcmp
        - Src:             'import_name.c:228,19'
          Dst:             atoi
        - Src:             'import_name.c:231,20'
          Dst:             memcmp
        - Src:             'import_name.c:232,20'
          Dst:             memcmp
        - Src:             'import_name.c:266,17'
          Dst:             memcmp
        - Src:             'import_name.c:277,20'
          Dst:             k5alloc
        - Src:             'import_name.c:280,13'
          Dst:             strncpy
        - Src:             'import_name.c:293,24'
          Dst:             import_name_composite
        - Src:             'import_name.c:312,20'
          Dst:             krb5_parse_name_flags
        - Src:             'import_name.c:323,12'
          Dst:             kg_init_name
        - Src:             'import_name.c:338,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'import_name.c:339,5'
          Dst:             krb5_free_principal
        - Src:             'import_name.c:340,5'
          Dst:             krb5_authdata_context_free
        - Src:             'import_name.c:341,5'
          Dst:             krb5_free_context
    - functionName:    getpwuid_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atoi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_import_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - import_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'import_name.c:353,12'
          Dst:             import_name
    - functionName:    krb5_gss_import_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          90
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - kg_ctx_internalize
        - krb5_free_context
        - krb5_gss_convert_static_mech_oid
        - krb5_gss_init_context
        - krb5_gss_save_error_info
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'import_sec_context.c:65,12'
          Dst:             krb5_gss_init_context
        - Src:             'import_sec_context.c:78,12'
          Dst:             kg_ctx_internalize
        - Src:             'import_sec_context.c:81,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'import_sec_context.c:82,9'
          Dst:             krb5_free_context
        - Src:             'import_sec_context.c:85,5'
          Dst:             krb5_free_context
        - Src:             'import_sec_context.c:87,22'
          Dst:             krb5_gss_convert_static_mech_oid
    - functionName:    krb5_gss_convert_static_mech_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/import_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - generic_gss_release_oid
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'import_sec_context.c:42,14'
          Dst:             memcmp
        - Src:             'import_sec_context.c:43,13'
          Dst:             generic_gss_release_oid
    - functionName:    krb5_gss_indicate_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/indicate_mechs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_copy_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'indicate_mechs.c:34,12'
          Dst:             generic_gss_copy_oid_set
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_buf_add_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:120,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_buf_add_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:144,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:147,9'
          Dst:             store_32_be
    - functionName:    k5_buf_add_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:135,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:138,9'
          Dst:             store_16_le
    - functionName:    k5_buf_add_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:153,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:156,9'
          Dst:             store_32_le
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./gssapiP_krb5.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './gssapiP_krb5.h:1295,21'
          Dst:             empty_data
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_gss_checksum
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          339
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - __assert_fail
        - empty_data
        - iakerb_make_finished
        - k5_buf_add_byte
        - k5_buf_add_len
        - k5_buf_add_uint16_le
        - k5_buf_add_uint32_be
        - k5_buf_add_uint32_le
        - k5_buf_init_dynamic
        - k5_buf_status
        - krb5_auth_con_getflags
        - krb5_auth_con_getsendsubkey_k
        - krb5_auth_con_setflags
        - krb5_auth_con_setsendsubkey_k
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_fwd_tgt_creds
        - krb5_k_free_key
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:252,27'
          Dst:             empty_data
        - Src:             'init_sec_context.c:260,9'
          Dst:             krb5_auth_con_getflags
        - Src:             'init_sec_context.c:261,9'
          Dst:             krb5_auth_con_setflags
        - Src:             'init_sec_context.c:264,9'
          Dst:             __assert_fail
        - Src:             'init_sec_context.c:272,9'
          Dst:             krb5_auth_con_getsendsubkey_k
        - Src:             'init_sec_context.c:273,9'
          Dst:             krb5_auth_con_setsendsubkey_k
        - Src:             'init_sec_context.c:275,16'
          Dst:             krb5_fwd_tgt_creds
        - Src:             'init_sec_context.c:281,9'
          Dst:             krb5_auth_con_setflags
        - Src:             'init_sec_context.c:282,9'
          Dst:             krb5_auth_con_setsendsubkey_k
        - Src:             'init_sec_context.c:283,9'
          Dst:             krb5_k_free_key
        - Src:             'init_sec_context.c:311,5'
          Dst:             __assert_fail
        - Src:             'init_sec_context.c:316,16'
          Dst:             krb5_auth_con_getsendsubkey_k
        - Src:             'init_sec_context.c:320,16'
          Dst:             iakerb_make_finished
        - Src:             'init_sec_context.c:323,13'
          Dst:             krb5_k_free_key
        - Src:             'init_sec_context.c:327,9'
          Dst:             krb5_k_free_key
        - Src:             'init_sec_context.c:332,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'init_sec_context.c:333,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'init_sec_context.c:334,5'
          Dst:             k5_buf_add_len
        - Src:             'init_sec_context.c:335,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'init_sec_context.c:337,9'
          Dst:             k5_buf_add_uint16_le
        - Src:             'init_sec_context.c:338,9'
          Dst:             k5_buf_add_uint16_le
        - Src:             'init_sec_context.c:339,9'
          Dst:             k5_buf_add_len
        - Src:             'init_sec_context.c:342,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'init_sec_context.c:343,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'init_sec_context.c:344,9'
          Dst:             k5_buf_add_len
        - Src:             'init_sec_context.c:347,9'
          Dst:             k5_buf_add_byte
        - Src:             'init_sec_context.c:349,12'
          Dst:             k5_buf_status
        - Src:             'init_sec_context.c:353,27'
          Dst:             make_data
        - Src:             'init_sec_context.c:358,5'
          Dst:             krb5_free_data_contents
        - Src:             'init_sec_context.c:359,5'
          Dst:             krb5_free_data
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_ap_req_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          259
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - data_to_gss
        - gssalloc_malloc
        - gssint_g_make_token_header
        - gssint_g_token_size
        - k5_buf_add_len
        - k5_buf_init_fixed
        - kg_checksum_channel_bindings
        - krb5_auth_con_set_authdata_context
        - krb5_auth_con_set_checksum_func
        - krb5_auth_con_set_req_cksumtype
        - krb5_free_checksum_contents
        - krb5_free_data_contents
        - krb5_mk_req_extended
        - make_gss_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:384,17'
          Dst:             kg_checksum_channel_bindings
        - Src:             'init_sec_context.c:387,5'
          Dst:             krb5_auth_con_set_req_cksumtype
        - Src:             'init_sec_context.c:394,5'
          Dst:             krb5_auth_con_set_checksum_func
        - Src:             'init_sec_context.c:394,5'
          Dst:             make_gss_checksum
        - Src:             'init_sec_context.c:406,5'
          Dst:             krb5_auth_con_set_authdata_context
        - Src:             'init_sec_context.c:407,12'
          Dst:             krb5_mk_req_extended
        - Src:             'init_sec_context.c:409,5'
          Dst:             krb5_auth_con_set_authdata_context
        - Src:             'init_sec_context.c:410,5'
          Dst:             krb5_free_checksum_contents
        - Src:             'init_sec_context.c:411,5'
          Dst:             krb5_free_data_contents
        - Src:             'init_sec_context.c:425,16'
          Dst:             data_to_gss
        - Src:             'init_sec_context.c:430,16'
          Dst:             gssint_g_token_size
        - Src:             'init_sec_context.c:431,13'
          Dst:             gssalloc_malloc
        - Src:             'init_sec_context.c:436,9'
          Dst:             k5_buf_init_fixed
        - Src:             'init_sec_context.c:437,9'
          Dst:             gssint_g_make_token_header
        - Src:             'init_sec_context.c:438,9'
          Dst:             k5_buf_add_len
        - Src:             'init_sec_context.c:439,9'
          Dst:             __assert_fail
        - Src:             'init_sec_context.c:451,9'
          Dst:             krb5_free_data_contents
    - functionName:    get_credentials
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          316
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - __assert_fail
        - empty_data
        - krb5_authdata_export_authdata
        - krb5_cc_retrieve_cred
        - krb5_free_authdata
        - krb5_free_cred_contents
        - krb5_free_creds
        - krb5_get_credentials
        - krb5_principal_compare
        - ts_after
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:137,5'
          Dst:             __assert_fail
        - Src:             'init_sec_context.c:143,29'
          Dst:             empty_data
        - Src:             'init_sec_context.c:156,16'
          Dst:             krb5_authdata_export_authdata
        - Src:             'init_sec_context.c:168,13'
          Dst:             krb5_principal_compare
        - Src:             'init_sec_context.c:176,20'
          Dst:             krb5_cc_retrieve_cred
        - Src:             'init_sec_context.c:193,12'
          Dst:             krb5_get_credentials
        - Src:             'init_sec_context.c:199,14'
          Dst:             krb5_principal_compare
        - Src:             'init_sec_context.c:213,9'
          Dst:             ts_after
        - Src:             'init_sec_context.c:222,5'
          Dst:             krb5_free_authdata
        - Src:             'init_sec_context.c:223,5'
          Dst:             krb5_free_cred_contents
        - Src:             'init_sec_context.c:224,5'
          Dst:             krb5_free_creds
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_init_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_gss_init_sec_context_ext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:1054,12'
          Dst:             krb5_gss_init_sec_context_ext
    - functionName:    krb5_gss_init_sec_context_ext
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      int
      argCount:        14
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          447
      EdgeCount:       88
      CyclomaticComplexity: 24
      functionsReached:
        - k5_mutex_unlock
        - kg_cred_resolve
        - kg_get_defcred
        - kg_new_connection
        - kg_sync_ccache_name
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_release_cred
        - krb5_gss_save_error_info
        - memcmp
        - mutual_auth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:895,16'
          Dst:             krb5_gss_init_context
        - Src:             'init_sec_context.c:900,13'
          Dst:             kg_sync_ccache_name
        - Src:             'init_sec_context.c:901,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'init_sec_context.c:902,13'
          Dst:             krb5_free_context
        - Src:             'init_sec_context.c:919,40'
          Dst:             memcmp
        - Src:             'init_sec_context.c:921,16'
          Dst:             memcmp
        - Src:             'init_sec_context.c:923,16'
          Dst:             memcmp
        - Src:             'init_sec_context.c:925,16'
          Dst:             memcmp
        - Src:             'init_sec_context.c:930,13'
          Dst:             krb5_free_context
        - Src:             'init_sec_context.c:941,28'
          Dst:             kg_get_defcred
        - Src:             'init_sec_context.c:944,21'
          Dst:             krb5_free_context
        - Src:             'init_sec_context.c:950,24'
          Dst:             kg_cred_resolve
        - Src:             'init_sec_context.c:953,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'init_sec_context.c:954,13'
          Dst:             krb5_gss_release_cred
        - Src:             'init_sec_context.c:956,17'
          Dst:             krb5_free_context
        - Src:             'init_sec_context.c:961,24'
          Dst:             kg_new_connection
        - Src:             'init_sec_context.c:967,9'
          Dst:             k5_mutex_unlock
        - Src:             'init_sec_context.c:968,9'
          Dst:             krb5_gss_release_cred
        - Src:             'init_sec_context.c:970,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'init_sec_context.c:971,13'
          Dst:             krb5_free_context
        - Src:             'init_sec_context.c:976,24'
          Dst:             mutual_auth
    - functionName:    krb5_gss_init_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1016
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gss_krb5int_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_init_context
        - krb5int_init_context_kdc
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:1003,11'
          Dst:             gss_krb5int_initialize_library
        - Src:             'init_sec_context.c:1007,5'
          Dst:             k5_mutex_lock
        - Src:             'init_sec_context.c:1009,5'
          Dst:             k5_mutex_unlock
        - Src:             'init_sec_context.c:1012,16'
          Dst:             krb5int_init_context_kdc
        - Src:             'init_sec_context.c:1015,12'
          Dst:             krb5_init_context
    - functionName:    kg_new_connection
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      int
      argCount:        15
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         109
      ICount:          798
      EdgeCount:       150
      CyclomaticComplexity: 43
      functionsReached:
        - generic_gss_copy_oid
        - get_credentials
        - gssint_g_seqstate_init
        - kg_duplicate_name
        - kg_release_name
        - kg_setup_keys
        - krb5_auth_con_free
        - krb5_auth_con_getlocalseqnumber
        - krb5_auth_con_getsendsubkey
        - krb5_auth_con_init
        - krb5_auth_con_setflags
        - krb5_free_creds
        - krb5_free_keyblock
        - krb5_gss_convert_static_mech_oid
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_set_default_tgs_enctypes
        - krb5_timeofday
        - make_ap_req_v1
        - ts_incr
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:520,17'
          Dst:             krb5_auth_con_init
        - Src:             'init_sec_context.c:522,5'
          Dst:             krb5_auth_con_setflags
        - Src:             'init_sec_context.c:527,21'
          Dst:             krb5_set_default_tgs_enctypes
        - Src:             'init_sec_context.c:557,17'
          Dst:             krb5_timeofday
        - Src:             'init_sec_context.c:563,34'
          Dst:             ts_incr
        - Src:             'init_sec_context.c:566,17'
          Dst:             kg_duplicate_name
        - Src:             'init_sec_context.c:569,17'
          Dst:             kg_duplicate_name
        - Src:             'init_sec_context.c:573,12'
          Dst:             get_credentials
        - Src:             'init_sec_context.c:588,9'
          Dst:             generic_gss_copy_oid
        - Src:             'init_sec_context.c:596,22'
          Dst:             krb5_gss_convert_static_mech_oid
        - Src:             'init_sec_context.c:601,21'
          Dst:             make_ap_req_v1
        - Src:             'init_sec_context.c:613,9'
          Dst:             krb5_auth_con_getlocalseqnumber
        - Src:             'init_sec_context.c:615,16'
          Dst:             krb5_auth_con_getsendsubkey
        - Src:             'init_sec_context.c:619,16'
          Dst:             krb5_k_create_key
        - Src:             'init_sec_context.c:620,9'
          Dst:             krb5_free_keyblock
        - Src:             'init_sec_context.c:628,12'
          Dst:             kg_setup_keys
        - Src:             'init_sec_context.c:635,16'
          Dst:             gssint_g_seqstate_init
        - Src:             'init_sec_context.c:645,21'
          Dst:             krb5_timeofday
        - Src:             'init_sec_context.c:647,21'
          Dst:             ts_interval
        - Src:             'init_sec_context.c:673,5'
          Dst:             krb5_free_creds
        - Src:             'init_sec_context.c:676,13'
          Dst:             krb5_auth_con_free
        - Src:             'init_sec_context.c:678,13'
          Dst:             kg_release_name
        - Src:             'init_sec_context.c:680,13'
          Dst:             kg_release_name
        - Src:             'init_sec_context.c:682,13'
          Dst:             krb5_k_free_key
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    mutual_auth
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          547
      EdgeCount:       97
      CyclomaticComplexity: 29
      functionsReached:
        - data_to_gss
        - gssint_g_seqstate_init
        - gssint_g_verify_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - kg_compare_name
        - kg_setup_keys
        - krb5_auth_con_setuseruserkey
        - krb5_free_ap_rep_enc_part
        - krb5_free_error
        - krb5_gss_delete_sec_context
        - krb5_k_create_key
        - krb5_mk_rep_dce
        - krb5_rd_error
        - krb5_rd_rep
        - krb5_timeofday
        - krb5int_accessor
        - make_data
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:724,12'
          Dst:             krb5int_accessor
        - Src:             'init_sec_context.c:739,11'
          Dst:             kg_compare_name
        - Src:             'init_sec_context.c:740,15'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'init_sec_context.c:750,15'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'init_sec_context.c:759,16'
          Dst:             make_data
        - Src:             'init_sec_context.c:761,9'
          Dst:             k5_input_init
        - Src:             'init_sec_context.c:762,14'
          Dst:             gssint_g_verify_token_header
        - Src:             'init_sec_context.c:766,19'
          Dst:             k5_input_get_uint16_be
        - Src:             'init_sec_context.c:767,16'
          Dst:             make_data
        - Src:             'init_sec_context.c:769,20'
          Dst:             krb5_rd_error
        - Src:             'init_sec_context.c:776,13'
          Dst:             krb5_free_error
        - Src:             'init_sec_context.c:785,12'
          Dst:             krb5_rd_rep
        - Src:             'init_sec_context.c:791,9'
          Dst:             krb5_auth_con_setuseruserkey
        - Src:             'init_sec_context.c:793,13'
          Dst:             krb5_rd_rep
        - Src:             'init_sec_context.c:799,12'
          Dst:             gssint_g_seqstate_init
        - Src:             'init_sec_context.c:804,9'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'init_sec_context.c:813,16'
          Dst:             krb5_k_create_key
        - Src:             'init_sec_context.c:816,13'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'init_sec_context.c:819,16'
          Dst:             kg_setup_keys
        - Src:             'init_sec_context.c:822,13'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'init_sec_context.c:827,5'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'init_sec_context.c:832,16'
          Dst:             krb5_mk_rep_dce
        - Src:             'init_sec_context.c:836,16'
          Dst:             data_to_gss
        - Src:             'init_sec_context.c:847,21'
          Dst:             krb5_timeofday
        - Src:             'init_sec_context.c:849,21'
          Dst:             ts_interval
        - Src:             'init_sec_context.c:864,11'
          Dst:             krb5_gss_delete_sec_context
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    krb5int_gss_use_kdc_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_krb5int_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_sec_context.c:1029,11'
          Dst:             gss_krb5int_initialize_library
        - Src:             'init_sec_context.c:1032,5'
          Dst:             k5_mutex_lock
        - Src:             'init_sec_context.c:1034,5'
          Dst:             k5_mutex_unlock
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    gss_krb5int_sec_context_sasl_ssf
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - generic_gss_add_buffer_set_member
        - k5_enctype_to_ssf
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:357,12'
          Dst:             k5_enctype_to_ssf
        - Src:             'inq_context.c:361,5'
          Dst:             store_32_be
        - Src:             'inq_context.c:365,12'
          Dst:             generic_gss_add_buffer_set_member
    - functionName:    gss_krb5int_extract_authtime_from_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_add_buffer_set_member
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:338,12'
          Dst:             generic_gss_add_buffer_set_member
    - functionName:    gss_krb5int_extract_authz_data_from_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          160
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - generic_gss_add_buffer_set_member
        - generic_gss_oid_decompose
        - generic_gss_release_buffer_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:289,20'
          Dst:             generic_gss_oid_decompose
        - Src:             'inq_context.c:307,32'
          Dst:             generic_gss_add_buffer_set_member
        - Src:             'inq_context.c:318,9'
          Dst:             generic_gss_release_buffer_set
    - functionName:    gss_krb5int_inq_odbc_session_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - inq_session_key_result
        - krb5_auth_con_getkey_k
        - krb5_k_free_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:262,11'
          Dst:             krb5_auth_con_getkey_k
        - Src:             'inq_context.c:268,13'
          Dst:             inq_session_key_result
        - Src:             'inq_context.c:269,5'
          Dst:             krb5_k_free_key
    - functionName:    inq_session_key_result
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          143
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - explicit_bzero
        - generic_gss_add_buffer_set_member
        - generic_gss_oid_compose
        - gss_release_buffer_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:194,13'
          Dst:             generic_gss_add_buffer_set_member
        - Src:             'inq_context.c:201,13'
          Dst:             generic_gss_oid_compose
        - Src:             'inq_context.c:210,13'
          Dst:             generic_gss_add_buffer_set_member
        - Src:             'inq_context.c:220,13'
          Dst:             explicit_bzero
        - Src:             'inq_context.c:223,9'
          Dst:             gss_release_buffer_set
    - functionName:    gss_krb5int_inq_sspi_session_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - inq_session_key_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:243,12'
          Dst:             inq_session_key_result
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_inquire_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          427
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - kg_duplicate_name
        - kg_release_name
        - krb5_gss_save_error_info
        - krb5_timeofday
        - ts_incr
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_context.c:108,21'
          Dst:             krb5_timeofday
        - Src:             'inq_context.c:110,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'inq_context.c:116,39'
          Dst:             ts_incr
        - Src:             'inq_context.c:117,20'
          Dst:             ts_interval
        - Src:             'inq_context.c:120,20'
          Dst:             kg_duplicate_name
        - Src:             'inq_context.c:125,17'
          Dst:             krb5_gss_save_error_info
        - Src:             'inq_context.c:131,20'
          Dst:             kg_duplicate_name
        - Src:             'inq_context.c:136,21'
          Dst:             kg_release_name
        - Src:             'inq_context.c:138,17'
          Dst:             krb5_gss_save_error_info
    - functionName:    gss_krb5int_get_cred_impersonator
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          103
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - generic_gss_add_buffer_set_member
        - generic_gss_create_empty_buffer_set
        - krb5_free_context
        - krb5_free_unparsed_name
        - krb5_gss_init_context
        - krb5_unparse_name
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_cred.c:256,16'
          Dst:             generic_gss_create_empty_buffer_set
        - Src:             'inq_cred.c:258,11'
          Dst:             krb5_gss_init_context
        - Src:             'inq_cred.c:264,11'
          Dst:             krb5_unparse_name
        - Src:             'inq_cred.c:266,9'
          Dst:             krb5_free_context
        - Src:             'inq_cred.c:272,18'
          Dst:             strlen
        - Src:             'inq_cred.c:273,13'
          Dst:             generic_gss_add_buffer_set_member
        - Src:             'inq_cred.c:275,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'inq_cred.c:276,5'
          Dst:             krb5_free_context
    - functionName:    krb5_gss_inquire_cred_by_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          136
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - krb5_gss_inquire_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_cred.c:218,13'
          Dst:             krb5_gss_inquire_cred
    - functionName:    krb5_gss_inquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          448
      EdgeCount:       109
      CyclomaticComplexity: 30
      functionsReached:
        - generic_gss_add_oid_set_member
        - generic_gss_create_empty_oid_set
        - generic_gss_release_oid_set
        - k5_kt_get_principal
        - k5_mutex_unlock
        - kg_cred_resolve
        - kg_duplicate_name
        - kg_get_defcred
        - kg_init_name
        - kg_release_name
        - krb5_free_context
        - krb5_free_principal
        - krb5_gss_init_context
        - krb5_gss_release_cred
        - krb5_gss_save_error_info
        - krb5_timeofday
        - ts_interval
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_cred.c:94,12'
          Dst:             krb5_gss_init_context
        - Src:             'inq_cred.c:106,17'
          Dst:             kg_get_defcred
        - Src:             'inq_cred.c:108,13'
          Dst:             krb5_free_context
        - Src:             'inq_cred.c:114,13'
          Dst:             kg_cred_resolve
        - Src:             'inq_cred.c:116,9'
          Dst:             krb5_gss_release_cred
        - Src:             'inq_cred.c:117,9'
          Dst:             krb5_free_context
        - Src:             'inq_cred.c:122,17'
          Dst:             krb5_timeofday
        - Src:             'inq_cred.c:129,20'
          Dst:             ts_interval
        - Src:             'inq_cred.c:138,20'
          Dst:             kg_duplicate_name
        - Src:             'inq_cred.c:143,20'
          Dst:             k5_kt_get_principal
        - Src:             'inq_cred.c:145,24'
          Dst:             kg_init_name
        - Src:             'inq_cred.c:148,21'
          Dst:             krb5_free_principal
        - Src:             'inq_cred.c:154,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'inq_cred.c:161,13'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'inq_cred.c:163,13'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_cred.c:166,13'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_cred.c:170,17'
          Dst:             kg_release_name
        - Src:             'inq_cred.c:198,5'
          Dst:             k5_mutex_unlock
        - Src:             'inq_cred.c:199,5'
          Dst:             krb5_gss_release_cred
        - Src:             'inq_cred.c:200,5'
          Dst:             krb5_free_context
        - Src:             'inq_cred.c:201,11'
          Dst:             generic_gss_release_oid_set
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    krb5_gss_inquire_names_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/inq_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          307
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - generic_gss_add_oid_set_member
        - generic_gss_create_empty_oid_set
        - generic_gss_release_oid_set
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'inq_names.c:39,10'
          Dst:             memcmp
        - Src:             'inq_names.c:40,10'
          Dst:             memcmp
        - Src:             'inq_names.c:41,10'
          Dst:             memcmp
        - Src:             'inq_names.c:42,10'
          Dst:             memcmp
        - Src:             'inq_names.c:48,13'
          Dst:             generic_gss_create_empty_oid_set
        - Src:             'inq_names.c:52,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:56,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:60,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:64,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:68,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:72,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:76,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:80,23'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:85,21'
          Dst:             generic_gss_add_oid_set_member
        - Src:             'inq_names.c:95,20'
          Dst:             generic_gss_release_oid_set
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_get_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5seal.c:373,12'
          Dst:             kg_seal
    - functionName:    kg_seal
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          178
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - gss_krb5int_make_seal_token_v3
        - krb5_gss_save_error_info
        - make_seal_token_v1
      functionUses:    2
      BranchProfiles:
        - Branch String:   'k5seal.c:324,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5seal.c:327,16'
          Dst:             make_seal_token_v1
        - Src:             'k5seal.c:334,16'
          Dst:             gss_krb5int_make_seal_token_v3
        - Src:             'k5seal.c:346,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    make_seal_token_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         97
      ICount:          726
      EdgeCount:       117
      CyclomaticComplexity: 22
      functionsReached:
        - __assert_fail
        - abort
        - gssalloc_free
        - gssalloc_malloc
        - gssint_g_make_token_header
        - gssint_g_token_size
        - k5_buf_get_space
        - k5_buf_init_fixed
        - kg_arcfour_docrypt
        - kg_confounder_size
        - kg_encrypt
        - kg_make_confounder
        - kg_make_seq_num
        - krb5_c_checksum_length
        - krb5_free_checksum_contents
        - krb5_free_keyblock
        - krb5_k_key_keyblock
        - krb5_k_make_checksum
        - store_16_le
        - store_32_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'k5seal.c:95,9'
          Branch Sides:    []
        - Branch String:   'k5seal.c:146,5'
          Branch Sides:    []
        - Branch String:   'k5seal.c:206,5'
          Branch Sides:    []
        - Branch String:   'k5seal.c:234,9'
          Branch Sides:    []
      Callsites:
        - Src:             'k5seal.c:87,5'
          Dst:             __assert_fail
        - Src:             'k5seal.c:91,19'
          Dst:             kg_confounder_size
        - Src:             'k5seal.c:112,12'
          Dst:             gssint_g_token_size
        - Src:             'k5seal.c:113,9'
          Dst:             gssalloc_malloc
        - Src:             'k5seal.c:116,5'
          Dst:             k5_buf_init_fixed
        - Src:             'k5seal.c:120,5'
          Dst:             gssint_g_make_token_header
        - Src:             'k5seal.c:121,16'
          Dst:             k5_buf_get_space
        - Src:             'k5seal.c:122,16'
          Dst:             k5_buf_get_space
        - Src:             'k5seal.c:123,15'
          Dst:             k5_buf_get_space
        - Src:             'k5seal.c:124,5'
          Dst:             __assert_fail
        - Src:             'k5seal.c:125,5'
          Dst:             __assert_fail
        - Src:             'k5seal.c:128,5'
          Dst:             store_16_le
        - Src:             'k5seal.c:132,9'
          Dst:             store_16_le
        - Src:             'k5seal.c:156,9'
          Dst:             abort
        - Src:             'k5seal.c:159,12'
          Dst:             krb5_c_checksum_length
        - Src:             'k5seal.c:161,9'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:168,9'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:173,21'
          Dst:             kg_make_confounder
        - Src:             'k5seal.c:176,13'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:189,9'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:197,12'
          Dst:             krb5_k_make_checksum
        - Src:             'k5seal.c:203,9'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:213,13'
          Dst:             abort
        - Src:             'k5seal.c:221,5'
          Dst:             krb5_free_checksum_contents
        - Src:             'k5seal.c:225,12'
          Dst:             kg_make_seq_num
        - Src:             'k5seal.c:229,9'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:240,13'
          Dst:             store_32_be
        - Src:             'k5seal.c:241,20'
          Dst:             krb5_k_key_keyblock
        - Src:             'k5seal.c:245,17'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:248,13'
          Dst:             __assert_fail
        - Src:             'k5seal.c:251,20'
          Dst:             kg_arcfour_docrypt
        - Src:             'k5seal.c:253,13'
          Dst:             krb5_free_keyblock
        - Src:             'k5seal.c:257,17'
          Dst:             gssalloc_free
        - Src:             'k5seal.c:263,20'
          Dst:             kg_encrypt
        - Src:             'k5seal.c:267,17'
          Dst:             gssalloc_free
    - functionName:    abort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    55
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_wrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5seal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5seal.c:363,12'
          Dst:             kg_seal
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_get_mic_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal_iov_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealiov.c:539,20'
          Dst:             kg_seal_iov_length
    - functionName:    kg_seal_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          615
      EdgeCount:       127
      CyclomaticComplexity: 33
      functionsReached:
        - __assert_fail
        - gssint_g_token_size
        - kg_confounder_size
        - kg_integ_only_iov
        - kg_iov_msglen
        - kg_locate_header_iov
        - kg_locate_iov
        - krb5_c_block_size
        - krb5_c_crypto_length
        - krb5_c_padding_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealiov.c:340,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5sealiov.c:347,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealiov.c:358,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealiov.c:368,5'
          Dst:             kg_iov_msglen
        - Src:             'k5sealiov.c:370,26'
          Dst:             kg_integ_only_iov
        - Src:             'k5sealiov.c:385,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealiov.c:395,20'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealiov.c:407,20'
          Dst:             krb5_c_padding_length
        - Src:             'k5sealiov.c:416,24'
          Dst:             krb5_c_block_size
        - Src:             'k5sealiov.c:443,24'
          Dst:             kg_confounder_size
        - Src:             'k5sealiov.c:450,25'
          Dst:             gssint_g_token_size
        - Src:             'k5sealiov.c:466,5'
          Dst:             __assert_fail
    - functionName:    krb5_gss_get_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealiov.c:523,20'
          Dst:             kg_seal_iov
    - functionName:    kg_seal_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          162
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - gss_krb5int_make_seal_token_v3_iov
        - kg_integ_only_iov
        - krb5_gss_save_error_info
        - make_seal_token_v1_iov
      functionUses:    2
      BranchProfiles:
        - Branch String:   'k5sealiov.c:281,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5sealiov.c:275,26'
          Dst:             kg_integ_only_iov
        - Src:             'k5sealiov.c:283,16'
          Dst:             make_seal_token_v1_iov
        - Src:             'k5sealiov.c:287,16'
          Dst:             gss_krb5int_make_seal_token_v3_iov
        - Src:             'k5sealiov.c:297,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    make_seal_token_v1_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         119
      ICount:          836
      EdgeCount:       151
      CyclomaticComplexity: 34
      functionsReached:
        - __assert_fail
        - abort
        - gssint_g_make_token_header
        - gssint_g_token_size
        - k5_buf_get_space
        - k5_buf_init_fixed
        - kg_allocate_iov
        - kg_arcfour_docrypt_iov
        - kg_confounder_size
        - kg_encrypt_iov
        - kg_iov_msglen
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_make_checksum_iov_v1
        - kg_make_confounder
        - kg_make_seq_num
        - kg_release_iov
        - krb5_c_checksum_length
        - krb5_free_checksum_contents
        - krb5_free_keyblock
        - krb5_k_key_keyblock
        - store_16_le
        - store_32_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'k5sealiov.c:151,5'
          Branch Sides:    []
        - Branch String:   'k5sealiov.c:186,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5sealiov.c:55,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5sealiov.c:59,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealiov.c:64,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealiov.c:74,18'
          Dst:             kg_confounder_size
        - Src:             'k5sealiov.c:76,9'
          Dst:             kg_iov_msglen
        - Src:             'k5sealiov.c:91,20'
          Dst:             kg_allocate_iov
        - Src:             'k5sealiov.c:112,12'
          Dst:             gssint_g_token_size
        - Src:             'k5sealiov.c:117,16'
          Dst:             kg_allocate_iov
        - Src:             'k5sealiov.c:125,5'
          Dst:             k5_buf_init_fixed
        - Src:             'k5sealiov.c:126,5'
          Dst:             gssint_g_make_token_header
        - Src:             'k5sealiov.c:128,16'
          Dst:             k5_buf_get_space
        - Src:             'k5sealiov.c:129,16'
          Dst:             k5_buf_get_space
        - Src:             'k5sealiov.c:130,5'
          Dst:             __assert_fail
        - Src:             'k5sealiov.c:133,5'
          Dst:             store_16_le
        - Src:             'k5sealiov.c:137,9'
          Dst:             store_16_le
        - Src:             'k5sealiov.c:161,9'
          Dst:             abort
        - Src:             'k5sealiov.c:164,12'
          Dst:             krb5_c_checksum_length
        - Src:             'k5sealiov.c:170,22'
          Dst:             k5_buf_get_space
        - Src:             'k5sealiov.c:171,9'
          Dst:             __assert_fail
        - Src:             'k5sealiov.c:172,16'
          Dst:             kg_make_confounder
        - Src:             'k5sealiov.c:179,12'
          Dst:             kg_make_checksum_iov_v1
        - Src:             'k5sealiov.c:188,9'
          Dst:             __assert_fail
        - Src:             'k5sealiov.c:197,12'
          Dst:             kg_make_seq_num
        - Src:             'k5sealiov.c:208,13'
          Dst:             store_32_be
        - Src:             'k5sealiov.c:210,20'
          Dst:             krb5_k_key_keyblock
        - Src:             'k5sealiov.c:214,13'
          Dst:             __assert_fail
        - Src:             'k5sealiov.c:219,20'
          Dst:             kg_arcfour_docrypt_iov
        - Src:             'k5sealiov.c:222,13'
          Dst:             krb5_free_keyblock
        - Src:             'k5sealiov.c:224,20'
          Dst:             kg_encrypt_iov
        - Src:             'k5sealiov.c:244,9'
          Dst:             kg_release_iov
        - Src:             'k5sealiov.c:245,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_gss_wrap_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal_iov_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealiov.c:508,20'
          Dst:             kg_seal_iov_length
    - functionName:    krb5_gss_wrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_seal_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealiov.c:490,20'
          Dst:             kg_seal_iov
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    store_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:570,5'
          Dst:             __bswap_64
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    gss_krb5int_make_seal_token_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealv3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          640
      EdgeCount:       89
      CyclomaticComplexity: 23
      functionsReached:
        - __assert_fail
        - abort
        - alloc_data
        - empty_data
        - explicit_bzero
        - gssalloc_free
        - gssalloc_malloc
        - krb5_c_checksum_length
        - krb5_encrypt_size
        - krb5_free_checksum_contents
        - krb5_k_encrypt
        - krb5_k_make_checksum
        - store_16_be
        - store_64_be
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealv3.c:81,23'
          Dst:             empty_data
        - Src:             'k5sealv3.c:101,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3.c:132,15'
          Dst:             alloc_data
        - Src:             'k5sealv3.c:137,24'
          Dst:             krb5_encrypt_size
        - Src:             'k5sealv3.c:144,18'
          Dst:             gssalloc_malloc
        - Src:             'k5sealv3.c:151,9'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:158,9'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:160,9'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:161,9'
          Dst:             store_64_be
        - Src:             'k5sealv3.c:171,15'
          Dst:             krb5_k_encrypt
        - Src:             'k5sealv3.c:195,15'
          Dst:             alloc_data
        - Src:             'k5sealv3.c:199,15'
          Dst:             krb5_c_checksum_length
        - Src:             'k5sealv3.c:203,9'
          Dst:             __assert_fail
        - Src:             'k5sealv3.c:206,18'
          Dst:             gssalloc_malloc
        - Src:             'k5sealv3.c:213,9'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:223,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:225,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:228,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:229,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:231,9'
          Dst:             store_64_be
        - Src:             'k5sealv3.c:241,15'
          Dst:             krb5_k_make_checksum
        - Src:             'k5sealv3.c:244,13'
          Dst:             explicit_bzero
        - Src:             'k5sealv3.c:248,13'
          Dst:             abort
        - Src:             'k5sealv3.c:262,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:264,13'
          Dst:             store_16_be
        - Src:             'k5sealv3.c:275,9'
          Dst:             abort
        - Src:             'k5sealv3.c:283,5'
          Dst:             krb5_free_checksum_contents
        - Src:             'k5sealv3.c:284,5'
          Dst:             zapfree
        - Src:             'k5sealv3.c:285,5'
          Dst:             gssalloc_free
    - functionName:    gss_krb5int_rotate_left
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealv3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:615,12'
          Dst:             __bswap_64
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    gss_krb5int_unseal_v3_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealv3iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         103
      ICount:          710
      EdgeCount:       140
      CyclomaticComplexity: 39
      functionsReached:
        - __assert_fail
        - gssint_g_seqstate_check
        - kg_decrypt_iov
        - kg_iov_msglen
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_verify_checksum_iov_v3
        - krb5_c_crypto_length
        - load_16_be
        - load_64_be
        - memcmp
        - store_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealv3iov.c:301,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5sealv3iov.c:302,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:304,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealv3iov.c:308,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealv3iov.c:319,5'
          Dst:             kg_iov_msglen
        - Src:             'k5sealv3iov.c:340,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:346,13'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:351,14'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:352,15'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:353,18'
          Dst:             load_64_be
        - Src:             'k5sealv3iov.c:355,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealv3iov.c:387,20'
          Dst:             kg_decrypt_iov
        - Src:             'k5sealv3iov.c:402,17'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:405,20'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:406,20'
          Dst:             memcmp
        - Src:             'k5sealv3iov.c:416,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:417,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:419,20'
          Dst:             kg_verify_checksum_iov_v3
        - Src:             'k5sealv3iov.c:428,16'
          Dst:             gssint_g_seqstate_check
        - Src:             'k5sealv3iov.c:430,13'
          Dst:             load_16_be
        - Src:             'k5sealv3iov.c:436,18'
          Dst:             load_64_be
        - Src:             'k5sealv3iov.c:441,16'
          Dst:             kg_verify_checksum_iov_v3
        - Src:             'k5sealv3iov.c:448,16'
          Dst:             gssint_g_seqstate_check
        - Src:             'k5sealv3iov.c:450,13'
          Dst:             load_16_be
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    store_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:570,5'
          Dst:             __bswap_64
    - functionName:    gss_krb5int_make_seal_token_v3_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5sealv3iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         127
      ICount:          917
      EdgeCount:       167
      CyclomaticComplexity: 42
      functionsReached:
        - __assert_fail
        - abort
        - kg_allocate_iov
        - kg_encrypt_iov
        - kg_iov_msglen
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_make_checksum_iov_v3
        - kg_release_iov
        - krb5_c_block_size
        - krb5_c_crypto_length
        - krb5_c_padding_length
        - store_16_be
        - store_64_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5sealv3iov.c:54,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:71,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:72,5'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:74,5'
          Dst:             kg_iov_msglen
        - Src:             'k5sealv3iov.c:76,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5sealv3iov.c:80,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealv3iov.c:84,15'
          Dst:             kg_locate_iov
        - Src:             'k5sealv3iov.c:91,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealv3iov.c:96,16'
          Dst:             krb5_c_padding_length
        - Src:             'k5sealv3iov.c:103,20'
          Dst:             krb5_c_block_size
        - Src:             'k5sealv3iov.c:109,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealv3iov.c:126,20'
          Dst:             kg_allocate_iov
        - Src:             'k5sealv3iov.c:136,24'
          Dst:             kg_allocate_iov
        - Src:             'k5sealv3iov.c:145,9'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:152,9'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:154,9'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:155,9'
          Dst:             store_64_be
        - Src:             'k5sealv3iov.c:166,16'
          Dst:             kg_encrypt_iov
        - Src:             'k5sealv3iov.c:173,9'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:183,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5sealv3iov.c:189,9'
          Dst:             __assert_fail
        - Src:             'k5sealv3iov.c:197,20'
          Dst:             kg_allocate_iov
        - Src:             'k5sealv3iov.c:207,24'
          Dst:             kg_allocate_iov
        - Src:             'k5sealv3iov.c:216,9'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:227,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:229,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:232,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:233,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:235,9'
          Dst:             store_64_be
        - Src:             'k5sealv3iov.c:237,16'
          Dst:             kg_make_checksum_iov_v3
        - Src:             'k5sealv3iov.c:247,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:249,13'
          Dst:             store_16_be
        - Src:             'k5sealv3iov.c:259,9'
          Dst:             abort
        - Src:             'k5sealv3iov.c:268,9'
          Dst:             kg_release_iov
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    kg_unseal_v1_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         120
      ICount:          754
      EdgeCount:       154
      CyclomaticComplexity: 36
      functionsReached:
        - __assert_fail
        - abort
        - gssint_g_seqstate_check
        - k5_bcmp
        - kg_arcfour_docrypt_iov
        - kg_confounder_size
        - kg_decrypt_iov
        - kg_fixup_padding_iov
        - kg_get_seq_num
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_make_checksum_iov_v1
        - krb5_c_checksum_length
        - krb5_free_checksum_contents
        - krb5_free_keyblock
        - krb5_k_key_keyblock
        - store_32_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'k5unsealiov.c:114,5'
          Branch Sides:    []
        - Branch String:   'k5unsealiov.c:185,5'
          Branch Sides:    []
        - Branch String:   'k5unsealiov.c:213,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5unsealiov.c:60,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5unsealiov.c:61,5'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:63,15'
          Dst:             kg_locate_iov
        - Src:             'k5unsealiov.c:129,12'
          Dst:             kg_get_seq_num
        - Src:             'k5unsealiov.c:144,17'
          Dst:             store_32_be
        - Src:             'k5unsealiov.c:146,24'
          Dst:             krb5_k_key_keyblock
        - Src:             'k5unsealiov.c:152,17'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:157,24'
          Dst:             kg_arcfour_docrypt_iov
        - Src:             'k5unsealiov.c:160,17'
          Dst:             krb5_free_keyblock
        - Src:             'k5unsealiov.c:162,24'
          Dst:             kg_decrypt_iov
        - Src:             'k5unsealiov.c:173,19'
          Dst:             kg_confounder_size
        - Src:             'k5unsealiov.c:193,9'
          Dst:             abort
        - Src:             'k5unsealiov.c:196,12'
          Dst:             krb5_c_checksum_length
        - Src:             'k5unsealiov.c:204,12'
          Dst:             kg_make_checksum_iov_v1
        - Src:             'k5unsealiov.c:216,16'
          Dst:             k5_bcmp
        - Src:             'k5unsealiov.c:240,18'
          Dst:             kg_fixup_padding_iov
        - Src:             'k5unsealiov.c:259,14'
          Dst:             gssint_g_seqstate_check
        - Src:             'k5unsealiov.c:262,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_verify_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_unseal_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5unsealiov.c:627,20'
          Dst:             kg_unseal_iov
    - functionName:    kg_unseal_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - kg_locate_iov
        - kg_unseal_iov_token
        - kg_unseal_stream_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'k5unsealiov.c:590,9'
          Dst:             kg_locate_iov
        - Src:             'k5unsealiov.c:591,16'
          Dst:             kg_unseal_stream_iov
        - Src:             'k5unsealiov.c:594,16'
          Dst:             kg_unseal_iov_token
    - functionName:    kg_unseal_stream_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          787
      EdgeCount:       112
      CyclomaticComplexity: 25
      functionsReached:
        - __assert_fail
        - calloc
        - gss_krb5int_rotate_left
        - gssint_g_verify_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - kg_allocate_iov
        - kg_confounder_size
        - kg_locate_iov
        - kg_release_iov
        - kg_unseal_iov_token
        - krb5_c_crypto_length
        - load_16_be
        - store_16_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'k5unsealiov.c:454,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5unsealiov.c:379,5'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:386,14'
          Dst:             kg_locate_iov
        - Src:             'k5unsealiov.c:387,5'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:391,5'
          Dst:             k5_input_init
        - Src:             'k5unsealiov.c:392,11'
          Dst:             gssint_g_verify_token_header
        - Src:             'k5unsealiov.c:393,16'
          Dst:             k5_input_get_uint16_be
        - Src:             'k5unsealiov.c:402,35'
          Dst:             calloc
        - Src:             'k5unsealiov.c:468,30'
          Dst:             load_16_be
        - Src:             'k5unsealiov.c:469,15'
          Dst:             load_16_be
        - Src:             'k5unsealiov.c:472,18'
          Dst:             gss_krb5int_rotate_left
        - Src:             'k5unsealiov.c:477,13'
          Dst:             store_16_be
        - Src:             'k5unsealiov.c:481,20'
          Dst:             krb5_c_crypto_length
        - Src:             'k5unsealiov.c:488,16'
          Dst:             krb5_c_crypto_length
        - Src:             'k5unsealiov.c:503,13'
          Dst:             kg_confounder_size
        - Src:             'k5unsealiov.c:543,5'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:546,16'
          Dst:             kg_allocate_iov
        - Src:             'k5unsealiov.c:554,5'
          Dst:             __assert_fail
        - Src:             'k5unsealiov.c:556,20'
          Dst:             kg_unseal_iov_token
        - Src:             'k5unsealiov.c:561,9'
          Dst:             kg_release_iov
    - functionName:    kg_unseal_iov_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          290
      EdgeCount:       49
      CyclomaticComplexity: 11
      functionsReached:
        - gss_krb5int_unseal_v3_iov
        - gssint_g_get_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - kg_iov_msglen
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_unseal_v1_iov
        - krb5_gss_save_error_info
        - memcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'k5unsealiov.c:329,5'
          Branch Sides:    []
      Callsites:
        - Src:             'k5unsealiov.c:293,14'
          Dst:             kg_locate_header_iov
        - Src:             'k5unsealiov.c:299,15'
          Dst:             kg_locate_iov
        - Src:             'k5unsealiov.c:300,15'
          Dst:             kg_locate_iov
        - Src:             'k5unsealiov.c:307,9'
          Dst:             kg_iov_msglen
        - Src:             'k5unsealiov.c:320,5'
          Dst:             k5_input_init
        - Src:             'k5unsealiov.c:321,9'
          Dst:             gssint_g_get_token_header
        - Src:             'k5unsealiov.c:322,14'
          Dst:             memcmp
        - Src:             'k5unsealiov.c:327,16'
          Dst:             k5_input_get_uint16_be
        - Src:             'k5unsealiov.c:333,16'
          Dst:             gss_krb5int_unseal_v3_iov
        - Src:             'k5unsealiov.c:339,16'
          Dst:             kg_unseal_v1_iov
        - Src:             'k5unsealiov.c:350,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    krb5_gss_unwrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/k5unsealiov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kg_unseal_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5unsealiov.c:611,20'
          Dst:             kg_unseal_iov
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_enc_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - load_16_be
        - load_64_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:201,12'
          Dst:             load_16_be
        - Src:             'unwrap.c:202,25'
          Dst:             load_16_be
        - Src:             'unwrap.c:203,9'
          Dst:             load_64_be
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    load_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:615,12'
          Dst:             __bswap_64
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - char
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          154
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - gssalloc_free
        - gssalloc_malloc
        - krb5_k_decrypt
        - make_data
        - verify_enc_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:219,11'
          Dst:             gssalloc_malloc
        - Src:             'unwrap.c:226,25'
          Dst:             make_data
        - Src:             'unwrap.c:227,13'
          Dst:             make_data
        - Src:             'unwrap.c:228,11'
          Dst:             krb5_k_decrypt
        - Src:             'unwrap.c:235,10'
          Dst:             verify_enc_header
        - Src:             'unwrap.c:244,9'
          Dst:             gssalloc_free
        - Src:             'unwrap.c:251,5'
          Dst:             gssalloc_free
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rotate_left
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_64_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:132,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:133,32'
          Dst:             load_64_be
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          147
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - kg_arcfour_docrypt
        - kg_decrypt
        - krb5_free_keyblock
        - krb5_k_key_keyblock
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:59,15'
          Dst:             kg_decrypt
        - Src:             'unwrap.c:63,9'
          Dst:             store_32_be
        - Src:             'unwrap.c:64,15'
          Dst:             krb5_k_key_keyblock
        - Src:             'unwrap.c:69,15'
          Dst:             kg_arcfour_docrypt
        - Src:             'unwrap.c:79,5'
          Dst:             krb5_free_keyblock
    - functionName:    k5_input_get_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_le
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:97,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:98,32'
          Dst:             load_16_le
    - functionName:    unwrap_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          366
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - decrypt_v3
        - gssalloc_malloc
        - gssint_g_seqstate_check
        - k5_input_get_byte
        - k5_input_get_uint16_be
        - k5_input_get_uint64_be
        - kg_verify_checksum_v3
        - krb5_c_checksum_length
        - rotate_left
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:288,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'unwrap.c:289,13'
          Dst:             k5_input_get_byte
        - Src:             'unwrap.c:290,14'
          Dst:             k5_input_get_byte
        - Src:             'unwrap.c:291,10'
          Dst:             k5_input_get_uint16_be
        - Src:             'unwrap.c:292,11'
          Dst:             k5_input_get_uint16_be
        - Src:             'unwrap.c:293,14'
          Dst:             k5_input_get_uint64_be
        - Src:             'unwrap.c:314,5'
          Dst:             __assert_fail
        - Src:             'unwrap.c:316,15'
          Dst:             rotate_left
        - Src:             'unwrap.c:324,17'
          Dst:             decrypt_v3
        - Src:             'unwrap.c:330,15'
          Dst:             krb5_c_checksum_length
        - Src:             'unwrap.c:342,14'
          Dst:             kg_verify_checksum_v3
        - Src:             'unwrap.c:352,37'
          Dst:             gssalloc_malloc
        - Src:             'unwrap.c:366,13'
          Dst:             gssint_g_seqstate_check
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    unwrap_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          408
      EdgeCount:       77
      CyclomaticComplexity: 23
      functionsReached:
        - decrypt_v1
        - gssalloc_malloc
        - gssint_g_seqstate_check
        - k5_input_get_bytes
        - k5_input_get_uint16_be
        - k5_input_get_uint16_le
        - kg_get_seq_num
        - kg_verify_checksum_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:107,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'unwrap.c:108,15'
          Dst:             k5_input_get_uint16_le
        - Src:             'unwrap.c:109,15'
          Dst:             k5_input_get_uint16_le
        - Src:             'unwrap.c:110,14'
          Dst:             k5_input_get_uint16_le
        - Src:             'unwrap.c:111,16'
          Dst:             k5_input_get_bytes
        - Src:             'unwrap.c:113,13'
          Dst:             k5_input_get_bytes
        - Src:             'unwrap.c:125,11'
          Dst:             kg_get_seq_num
        - Src:             'unwrap.c:137,15'
          Dst:             decrypt_v1
        - Src:             'unwrap.c:154,10'
          Dst:             kg_verify_checksum_v1
        - Src:             'unwrap.c:170,33'
          Dst:             gssalloc_malloc
        - Src:             'unwrap.c:183,13'
          Dst:             gssint_g_seqstate_check
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_unwrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/unwrap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          162
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - gssint_g_verify_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - krb5_gss_save_error_info
        - unwrap_v1
        - unwrap_v3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unwrap.c:394,5'
          Dst:             k5_input_init
        - Src:             'unwrap.c:395,11'
          Dst:             gssint_g_verify_token_header
        - Src:             'unwrap.c:398,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'unwrap.c:400,17'
          Dst:             unwrap_v1
        - Src:             'unwrap.c:403,17'
          Dst:             unwrap_v3
        - Src:             'unwrap.c:411,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:615,12'
          Dst:             __bswap_64
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    k5_input_get_uint64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_64_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:132,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:133,32'
          Dst:             load_64_be
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:111,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:112,32'
          Dst:             load_32_be
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    verify_mic_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/verify_mic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          207
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - gssint_g_seqstate_check
        - k5_input_get_byte
        - k5_input_get_uint16_be
        - k5_input_get_uint32_be
        - k5_input_get_uint64_be
        - kg_verify_checksum_v3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_mic.c:101,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'verify_mic.c:102,13'
          Dst:             k5_input_get_byte
        - Src:             'verify_mic.c:103,15'
          Dst:             k5_input_get_byte
        - Src:             'verify_mic.c:104,15'
          Dst:             k5_input_get_uint32_be
        - Src:             'verify_mic.c:105,14'
          Dst:             k5_input_get_uint64_be
        - Src:             'verify_mic.c:124,5'
          Dst:             __assert_fail
        - Src:             'verify_mic.c:126,10'
          Dst:             kg_verify_checksum_v3
        - Src:             'verify_mic.c:131,12'
          Dst:             gssint_g_seqstate_check
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_verify_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/verify_mic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          153
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - gssint_g_verify_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - kg_verify_mic_v1
        - krb5_gss_save_error_info
        - verify_mic_v3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_mic.c:153,5'
          Dst:             k5_input_init
        - Src:             'verify_mic.c:154,11'
          Dst:             gssint_g_verify_token_header
        - Src:             'verify_mic.c:157,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'verify_mic.c:159,17'
          Dst:             kg_verify_mic_v1
        - Src:             'verify_mic.c:162,17'
          Dst:             verify_mic_v3
        - Src:             'verify_mic.c:170,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    kg_verify_mic_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/verify_mic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          239
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - gssint_g_seqstate_check
        - k5_input_get_bytes
        - k5_input_get_uint16_be
        - k5_input_get_uint16_le
        - k5_input_get_uint32_le
        - kg_get_seq_num
        - kg_verify_checksum_v1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_mic.c:55,15'
          Dst:             k5_input_get_uint16_be
        - Src:             'verify_mic.c:56,15'
          Dst:             k5_input_get_uint16_le
        - Src:             'verify_mic.c:57,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'verify_mic.c:58,16'
          Dst:             k5_input_get_bytes
        - Src:             'verify_mic.c:60,13'
          Dst:             k5_input_get_bytes
        - Src:             'verify_mic.c:67,11'
          Dst:             kg_get_seq_num
        - Src:             'verify_mic.c:74,10'
          Dst:             kg_verify_checksum_v1
        - Src:             'verify_mic.c:85,12'
          Dst:             gssint_g_seqstate_check
    - functionName:    k5_input_get_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:97,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:98,32'
          Dst:             load_16_le
    - functionName:    k5_input_get_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:118,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:119,32'
          Dst:             load_32_le
    - functionName:    free_lucid_key_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lucid_context.c:269,13'
          Dst:             explicit_bzero
        - Src:             'lucid_context.c:271,13'
          Dst:             explicit_bzero
    - functionName:    copy_keyblock_to_lucid_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_external_lucid_ctx_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          76
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - free_lucid_key_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lucid_context.c:282,13'
          Dst:             free_lucid_key_data
        - Src:             'lucid_context.c:285,13'
          Dst:             free_lucid_key_data
        - Src:             'lucid_context.c:287,17'
          Dst:             free_lucid_key_data
    - functionName:    gss_krb5int_free_lucid_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - free_external_lucid_ctx_v1
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lucid_context.c:146,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lucid_context.c:148,9'
          Dst:             free_external_lucid_ctx_v1
    - functionName:    make_external_lucid_ctx_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          211
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - copy_keyblock_to_lucid_key
        - free_external_lucid_ctx_v1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lucid_context.c:204,23'
          Dst:             copy_keyblock_to_lucid_key
        - Src:             'lucid_context.c:212,23'
          Dst:             copy_keyblock_to_lucid_key
        - Src:             'lucid_context.c:216,27'
          Dst:             copy_keyblock_to_lucid_key
        - Src:             'lucid_context.c:233,9'
          Dst:             free_external_lucid_ctx_v1
    - functionName:    gss_krb5int_export_lucid_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/lucid_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          147
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - generic_gss_add_buffer_set_member
        - generic_gss_oid_decompose
        - make_external_lucid_ctx_v1
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lucid_context.c:92,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lucid_context.c:83,14'
          Dst:             generic_gss_oid_decompose
        - Src:             'lucid_context.c:94,16'
          Dst:             make_external_lucid_ctx_v1
        - Src:             'lucid_context.c:108,14'
          Dst:             generic_gss_add_buffer_set_member
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:108,12'
          Dst:             calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_export_name_composite
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          274
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssalloc_malloc
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_export_attributes
        - krb5_free_context
        - krb5_free_data
        - krb5_free_unparsed_name
        - krb5_gss_init_context
        - krb5_unparse_name
        - store_16_be
        - store_32_be
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:597,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:604,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:606,12'
          Dst:             krb5_unparse_name
        - Src:             'naming_exts.c:610,16'
          Dst:             strlen
        - Src:             'naming_exts.c:613,16'
          Dst:             krb5_authdata_export_attributes
        - Src:             'naming_exts.c:627,33'
          Dst:             gssalloc_malloc
        - Src:             'naming_exts.c:639,5'
          Dst:             store_16_be
        - Src:             'naming_exts.c:646,5'
          Dst:             store_32_be
        - Src:             'naming_exts.c:651,5'
          Dst:             store_32_be
        - Src:             'naming_exts.c:660,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'naming_exts.c:661,5'
          Dst:             krb5_free_data
        - Src:             'naming_exts.c:662,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:663,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:665,12'
          Dst:             kg_map_name_error
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    kg_map_name_error
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   'naming_exts.c:178,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    krb5_gss_release_any_name_mapping
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          138
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_free_internal
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:542,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:549,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:552,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:555,13'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:556,13'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:563,9'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:564,9'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:568,12'
          Dst:             krb5_authdata_free_internal
        - Src:             'naming_exts.c:575,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:576,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:578,12'
          Dst:             kg_map_name_error
    - functionName:    krb5_gss_map_name_to_any
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          129
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_export_internal
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:491,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:498,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:501,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:504,13'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:505,13'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:512,9'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:513,9'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:517,12'
          Dst:             krb5_authdata_export_internal
        - Src:             'naming_exts.c:523,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:524,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:526,12'
          Dst:             kg_map_name_error
    - functionName:    krb5_gss_delete_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          106
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_delete_attribute
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:445,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:452,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:455,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:458,13'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:459,13'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:467,12'
          Dst:             krb5_authdata_delete_attribute
        - Src:             'naming_exts.c:471,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:472,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:474,12'
          Dst:             kg_map_name_error
    - functionName:    krb5_gss_set_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          123
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_set_attribute
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:396,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:403,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:406,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:409,13'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:410,13'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:421,12'
          Dst:             krb5_authdata_set_attribute
        - Src:             'naming_exts.c:427,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:428,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:430,12'
          Dst:             kg_map_name_error
    - functionName:    data_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./gssapiP_krb5.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './gssapiP_krb5.h:1295,21'
          Dst:             empty_data
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_gss_get_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          216
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - data_to_gss
        - empty_data
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_get_attribute
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:321,24'
          Dst:             empty_data
        - Src:             'naming_exts.c:322,32'
          Dst:             empty_data
        - Src:             'naming_exts.c:326,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:333,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:336,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:339,13'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:340,13'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:351,12'
          Dst:             krb5_authdata_get_attribute
        - Src:             'naming_exts.c:361,20'
          Dst:             data_to_gss
        - Src:             'naming_exts.c:369,20'
          Dst:             data_to_gss
        - Src:             'naming_exts.c:375,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:376,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:378,12'
          Dst:             kg_map_name_error
    - functionName:    data_list_to_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          154
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - data_to_gss
        - gss_create_empty_buffer_set
        - gss_release_buffer_set
        - gssalloc_calloc
        - krb5int_free_data_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:213,9'
          Dst:             gss_create_empty_buffer_set
        - Src:             'naming_exts.c:215,9'
          Dst:             __assert_fail
        - Src:             'naming_exts.c:224,21'
          Dst:             gssalloc_calloc
        - Src:             'naming_exts.c:226,9'
          Dst:             gss_release_buffer_set
        - Src:             'naming_exts.c:237,13'
          Dst:             data_to_gss
        - Src:             'naming_exts.c:238,13'
          Dst:             gss_release_buffer_set
        - Src:             'naming_exts.c:244,5'
          Dst:             krb5int_free_data_list
    - functionName:    krb5_gss_inquire_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          133
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - data_list_to_buffer_set
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_map_name_error
        - krb5_authdata_context_init
        - krb5_authdata_get_attribute_types
        - krb5_free_context
        - krb5_gss_init_context
        - krb5int_free_data_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:269,12'
          Dst:             krb5_gss_init_context
        - Src:             'naming_exts.c:277,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:280,16'
          Dst:             krb5_authdata_context_init
        - Src:             'naming_exts.c:285,12'
          Dst:             krb5_authdata_get_attribute_types
        - Src:             'naming_exts.c:291,12'
          Dst:             data_list_to_buffer_set
        - Src:             'naming_exts.c:297,5'
          Dst:             k5_mutex_unlock
        - Src:             'naming_exts.c:298,5'
          Dst:             krb5int_free_data_list
        - Src:             'naming_exts.c:300,5'
          Dst:             krb5_free_context
        - Src:             'naming_exts.c:302,12'
          Dst:             kg_map_name_error
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    kg_acceptor_princ
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          132
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - k5memdup0
        - krb5_build_principal
        - krb5_copy_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:152,16'
          Dst:             krb5_copy_principal
        - Src:             'naming_exts.c:158,15'
          Dst:             k5memdup0
        - Src:             'naming_exts.c:165,12'
          Dst:             krb5_build_principal
    - functionName:    kg_compare_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_principal_compare
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:133,12'
          Dst:             krb5_principal_compare
    - functionName:    kg_duplicate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_init_name
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:120,5'
          Dst:             k5_mutex_lock
        - Src:             'naming_exts.c:121,12'
          Dst:             kg_init_name
        - Src:             'naming_exts.c:123,5'
          Dst:             k5_mutex_unlock
    - functionName:    kg_init_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          210
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - k5_mutex_init
        - kg_release_name
        - krb5_authdata_context_copy
        - krb5_copy_principal
        - strdup
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:40,5'
          Dst:             __assert_fail
        - Src:             'naming_exts.c:51,12'
          Dst:             k5_mutex_init
        - Src:             'naming_exts.c:56,16'
          Dst:             krb5_copy_principal
        - Src:             'naming_exts.c:61,20'
          Dst:             krb5_authdata_context_copy
        - Src:             'naming_exts.c:70,29'
          Dst:             strdup
        - Src:             'naming_exts.c:75,26'
          Dst:             strdup
        - Src:             'naming_exts.c:91,9'
          Dst:             kg_release_name
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    kg_release_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/naming_exts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_os_mutex_destroy
        - krb5_authdata_context_free
        - krb5_free_principal
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'naming_exts.c:101,9'
          Dst:             krb5_free_principal
        - Src:             'naming_exts.c:104,9'
          Dst:             krb5_authdata_context_free
        - Src:             'naming_exts.c:105,9'
          Dst:             k5_os_mutex_destroy
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_pseudo_random
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          328
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - gss_release_buffer
        - gssalloc_malloc
        - k5alloc
        - k5memcpy
        - krb5_c_prf_length
        - krb5_free_data_contents
        - krb5_k_key_enctype
        - krb5_k_prf
        - store_32_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'prf.c:66,5'
          Branch Sides:    []
      Callsites:
        - Src:             'prf.c:89,22'
          Dst:             gssalloc_malloc
        - Src:             'prf.c:97,30'
          Dst:             krb5_k_key_enctype
        - Src:             'prf.c:96,12'
          Dst:             krb5_c_prf_length
        - Src:             'prf.c:103,15'
          Dst:             k5alloc
        - Src:             'prf.c:110,14'
          Dst:             k5alloc
        - Src:             'prf.c:114,5'
          Dst:             k5memcpy
        - Src:             'prf.c:118,9'
          Dst:             store_32_be
        - Src:             'prf.c:120,16'
          Dst:             krb5_k_prf
        - Src:             'prf.c:133,9'
          Dst:             gss_release_buffer
        - Src:             'prf.c:134,5'
          Dst:             krb5_free_data_contents
        - Src:             'prf.c:135,5'
          Dst:             krb5_free_data_contents
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_process_context_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/process_context_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          115
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gssint_g_verify_token_header
        - k5_input_init
        - kg_verify_mic_v1
        - krb5_gss_save_error_info
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'process_context_token.c:54,5'
          Dst:             k5_input_init
        - Src:             'process_context_token.c:55,11'
          Dst:             gssint_g_verify_token_header
        - Src:             'process_context_token.c:57,14'
          Dst:             kg_verify_mic_v1
        - Src:             'process_context_token.c:60,9'
          Dst:             krb5_gss_save_error_info
    - functionName:    krb5_gss_release_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/rel_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - kg_release_cred
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_save_error_info
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_cred.c:65,21'
          Dst:             krb5_gss_init_context
        - Src:             'rel_cred.c:68,21'
          Dst:             kg_release_cred
        - Src:             'rel_cred.c:70,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'rel_cred.c:71,5'
          Dst:             krb5_free_context
    - functionName:    kg_release_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/rel_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          150
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - k5_os_mutex_destroy
        - k5_rc_close
        - kg_release_name
        - krb5_cc_close
        - krb5_cc_destroy
        - krb5_free_principal
        - krb5_kt_close
        - zapfreestr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_cred.c:33,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'rel_cred.c:36,19'
          Dst:             krb5_cc_destroy
        - Src:             'rel_cred.c:38,19'
          Dst:             krb5_cc_close
        - Src:             'rel_cred.c:41,9'
          Dst:             krb5_kt_close
        - Src:             'rel_cred.c:44,9'
          Dst:             krb5_kt_close
        - Src:             'rel_cred.c:47,9'
          Dst:             k5_rc_close
        - Src:             'rel_cred.c:48,5'
          Dst:             kg_release_name
        - Src:             'rel_cred.c:49,5'
          Dst:             krb5_free_principal
        - Src:             'rel_cred.c:50,5'
          Dst:             krb5_free_principal
        - Src:             'rel_cred.c:52,5'
          Dst:             zapfreestr
    - functionName:    zapfreestr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:677,9'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:677,9'
          Dst:             explicit_bzero
    - functionName:    krb5_gss_internal_release_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/rel_oid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_release_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/rel_oid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generic_gss_release_oid
        - krb5_gss_internal_release_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_oid.c:41,9'
          Dst:             krb5_gss_internal_release_oid
        - Src:             'rel_oid.c:43,16'
          Dst:             generic_gss_release_oid
    - functionName:    krb5_gss_release_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/rel_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_release_name
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_name.c:32,12'
          Dst:             krb5_gss_init_context
        - Src:             'rel_name.c:38,5'
          Dst:             kg_release_name
        - Src:             'rel_name.c:39,5'
          Dst:             krb5_free_context
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_proxy_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/s4u_gss_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          102
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_cc_copy_creds
        - krb5_cc_set_config
        - krb5_copy_principal
        - krb5_free_unparsed_name
        - krb5_unparse_name
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_gss_glue.c:190,12'
          Dst:             krb5_cc_copy_creds
        - Src:             's4u_gss_glue.c:195,12'
          Dst:             krb5_unparse_name
        - Src:             's4u_gss_glue.c:199,12'
          Dst:             string2data
        - Src:             's4u_gss_glue.c:200,12'
          Dst:             krb5_cc_set_config
        - Src:             's4u_gss_glue.c:202,5'
          Dst:             krb5_free_unparsed_name
        - Src:             's4u_gss_glue.c:206,12'
          Dst:             krb5_copy_principal
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    kg_is_initiator_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/s4u_gss_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_compose_deleg_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/s4u_gss_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          297
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - __assert_fail
        - k5_mutex_init
        - k5_os_mutex_destroy
        - kg_init_name
        - kg_is_initiator_cred
        - kg_release_name
        - krb5_cc_destroy
        - krb5_cc_initialize
        - krb5_cc_new_unique
        - krb5_cc_store_cred
        - krb5_timeofday
        - make_proxy_cred
        - ts_interval
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_gss_glue.c:226,10'
          Dst:             kg_is_initiator_cred
        - Src:             's4u_gss_glue.c:233,5'
          Dst:             __assert_fail
        - Src:             's4u_gss_glue.c:235,5'
          Dst:             __assert_fail
        - Src:             's4u_gss_glue.c:236,5'
          Dst:             __assert_fail
        - Src:             's4u_gss_glue.c:245,12'
          Dst:             k5_mutex_init
        - Src:             's4u_gss_glue.c:253,12'
          Dst:             kg_init_name
        - Src:             's4u_gss_glue.c:258,12'
          Dst:             krb5_cc_new_unique
        - Src:             's4u_gss_glue.c:263,12'
          Dst:             krb5_cc_initialize
        - Src:             's4u_gss_glue.c:267,12'
          Dst:             make_proxy_cred
        - Src:             's4u_gss_glue.c:271,12'
          Dst:             krb5_cc_store_cred
        - Src:             's4u_gss_glue.c:278,16'
          Dst:             krb5_timeofday
        - Src:             's4u_gss_glue.c:282,21'
          Dst:             ts_interval
        - Src:             's4u_gss_glue.c:296,9'
          Dst:             k5_os_mutex_destroy
        - Src:             's4u_gss_glue.c:297,9'
          Dst:             krb5_cc_destroy
        - Src:             's4u_gss_glue.c:298,9'
          Dst:             kg_release_name
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    kg_impersonate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/s4u_gss_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          176
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - kg_compose_deleg_cred
        - krb5_authdata_export_authdata
        - krb5_free_authdata
        - krb5_free_creds
        - krb5_get_credentials_for_user
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_gss_glue.c:65,5'
          Dst:             k5_mutex_lock
        - Src:             's4u_gss_glue.c:68,16'
          Dst:             krb5_authdata_export_authdata
        - Src:             's4u_gss_glue.c:73,13'
          Dst:             k5_mutex_unlock
        - Src:             's4u_gss_glue.c:79,5'
          Dst:             k5_mutex_unlock
        - Src:             's4u_gss_glue.c:81,12'
          Dst:             krb5_get_credentials_for_user
        - Src:             's4u_gss_glue.c:86,9'
          Dst:             krb5_free_authdata
        - Src:             's4u_gss_glue.c:91,20'
          Dst:             kg_compose_deleg_cred
        - Src:             's4u_gss_glue.c:99,5'
          Dst:             krb5_free_authdata
        - Src:             's4u_gss_glue.c:100,5'
          Dst:             krb5_free_creds
    - functionName:    krb5_gss_acquire_cred_impersonate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/s4u_gss_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - k5_mutex_unlock
        - kg_cred_resolve
        - kg_impersonate_name
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_gss_glue.c:146,12'
          Dst:             krb5_gss_init_context
        - Src:             's4u_gss_glue.c:152,20'
          Dst:             kg_cred_resolve
        - Src:             's4u_gss_glue.c:155,9'
          Dst:             krb5_free_context
        - Src:             's4u_gss_glue.c:159,20'
          Dst:             kg_impersonate_name
        - Src:             's4u_gss_glue.c:170,5'
          Dst:             k5_mutex_unlock
        - Src:             's4u_gss_glue.c:171,5'
          Dst:             krb5_free_context
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    gss_krb5int_set_allowable_enctypes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/set_allowable_enctypes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          219
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5calloc
        - krb5_c_valid_enctype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'set_allowable_enctypes.c:80,5'
          Dst:             __assert_fail
        - Src:             'set_allowable_enctypes.c:87,9'
          Dst:             k5_mutex_lock
        - Src:             'set_allowable_enctypes.c:91,9'
          Dst:             k5_mutex_unlock
        - Src:             'set_allowable_enctypes.c:97,18'
          Dst:             k5calloc
        - Src:             'set_allowable_enctypes.c:101,13'
          Dst:             krb5_c_valid_enctype
        - Src:             'set_allowable_enctypes.c:110,5'
          Dst:             k5_mutex_lock
        - Src:             'set_allowable_enctypes.c:114,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    kg_seqstate_internalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_g_seqstate_free
        - gssint_g_seqstate_internalize
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:165,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:171,11'
          Dst:             gssint_g_seqstate_internalize
        - Src:             'ser_sctx.c:176,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:177,9'
          Dst:             gssint_g_seqstate_free
        - Src:             'ser_sctx.c:182,9'
          Dst:             gssint_g_seqstate_free
    - functionName:    intern_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_internalize_keyblock
        - krb5_free_keyblock
        - krb5_k_create_key
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:473,11'
          Dst:             k5_internalize_keyblock
        - Src:             'ser_sctx.c:476,11'
          Dst:             krb5_k_create_key
        - Src:             'ser_sctx.c:477,5'
          Dst:             krb5_free_keyblock
    - functionName:    kg_oid_internalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          159
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - k5_ser_unpack_len
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:74,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:83,9'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_sctx.c:93,9'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_sctx.c:101,9'
          Dst:             krb5_ser_unpack_int32
    - functionName:    kg_ctx_internalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         158
      ICount:          902
      EdgeCount:       212
      CyclomaticComplexity: 56
      functionsReached:
        - intern_key
        - k5_internalize_auth_context
        - k5_internalize_authdata
        - k5_internalize_authdata_context
        - k5_internalize_context
        - k5_internalize_principal
        - k5_ser_unpack_len
        - k5calloc
        - kg_init_name
        - kg_oid_internalize
        - kg_release_name
        - kg_seqstate_internalize
        - krb5_free_principal
        - krb5_k_free_key
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
        - krb5int_accessor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:496,12'
          Dst:             krb5int_accessor
        - Src:             'ser_sctx.c:505,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:521,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:523,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:525,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:527,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:529,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:531,20'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_sctx.c:534,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:536,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:538,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:540,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:542,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:544,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:546,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:548,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:561,24'
          Dst:             kg_oid_internalize
        - Src:             'ser_sctx.c:568,20'
          Dst:             k5_internalize_principal
        - Src:             'ser_sctx.c:570,24'
          Dst:             kg_init_name
        - Src:             'ser_sctx.c:573,21'
          Dst:             krb5_free_principal
        - Src:             'ser_sctx.c:577,24'
          Dst:             k5_internalize_principal
        - Src:             'ser_sctx.c:579,28'
          Dst:             kg_init_name
        - Src:             'ser_sctx.c:582,25'
          Dst:             krb5_free_principal
        - Src:             'ser_sctx.c:587,25'
          Dst:             intern_key
        - Src:             'ser_sctx.c:592,25'
          Dst:             intern_key
        - Src:             'ser_sctx.c:597,25'
          Dst:             intern_key
        - Src:             'ser_sctx.c:603,24'
          Dst:             kg_seqstate_internalize
        - Src:             'ser_sctx.c:609,24'
          Dst:             k5_internalize_context
        - Src:             'ser_sctx.c:612,24'
          Dst:             k5_internalize_auth_context
        - Src:             'ser_sctx.c:616,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:619,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:622,25'
          Dst:             intern_key
        - Src:             'ser_sctx.c:627,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:630,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:634,24'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_sctx.c:636,33'
          Dst:             k5calloc
        - Src:             'ser_sctx.c:640,32'
          Dst:             k5_internalize_authdata
        - Src:             'ser_sctx.c:653,28'
          Dst:             k5_internalize_authdata_context
        - Src:             'ser_sctx.c:663,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_sctx.c:673,21'
          Dst:             krb5_k_free_key
        - Src:             'ser_sctx.c:675,21'
          Dst:             krb5_k_free_key
        - Src:             'ser_sctx.c:677,21'
          Dst:             krb5_k_free_key
        - Src:             'ser_sctx.c:679,21'
          Dst:             kg_release_name
        - Src:             'ser_sctx.c:681,21'
          Dst:             kg_release_name
    - functionName:    kg_seqstate_externalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gssint_g_seqstate_externalize
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:144,11'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:146,15'
          Dst:             gssint_g_seqstate_externalize
        - Src:             'ser_sctx.c:148,15'
          Dst:             krb5_ser_pack_int32
    - functionName:    kg_oid_externalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:47,11'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:50,11'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:54,11'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_sctx.c:58,11'
          Dst:             krb5_ser_pack_int32
    - functionName:    kg_ctx_externalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         111
      ICount:          685
      EdgeCount:       150
      CyclomaticComplexity: 41
      functionsReached:
        - k5_externalize_auth_context
        - k5_externalize_authdata
        - k5_externalize_authdata_context
        - k5_externalize_context
        - k5_externalize_keyblock
        - k5_externalize_principal
        - kg_ctx_size
        - kg_oid_externalize
        - kg_seqstate_externalize
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
        - krb5int_accessor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:323,12'
          Dst:             krb5int_accessor
        - Src:             'ser_sctx.c:333,14'
          Dst:             kg_ctx_size
        - Src:             'ser_sctx.c:336,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:339,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:341,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:343,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:345,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:347,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:349,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_sctx.c:352,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:354,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:356,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:358,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:360,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:362,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:364,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:366,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:377,24'
          Dst:             kg_oid_externalize
        - Src:             'ser_sctx.c:380,24'
          Dst:             k5_externalize_principal
        - Src:             'ser_sctx.c:384,24'
          Dst:             k5_externalize_principal
        - Src:             'ser_sctx.c:388,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_sctx.c:392,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_sctx.c:396,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_sctx.c:400,24'
          Dst:             kg_seqstate_externalize
        - Src:             'ser_sctx.c:403,24'
          Dst:             k5_externalize_context
        - Src:             'ser_sctx.c:406,24'
          Dst:             k5_externalize_auth_context
        - Src:             'ser_sctx.c:410,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:413,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:416,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_sctx.c:419,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:423,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:433,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_sctx.c:437,32'
          Dst:             k5_externalize_authdata
        - Src:             'ser_sctx.c:448,28'
          Dst:             k5_externalize_authdata_context
        - Src:             'ser_sctx.c:456,24'
          Dst:             krb5_ser_pack_int32
    - functionName:    kg_ctx_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          406
      EdgeCount:       99
      CyclomaticComplexity: 28
      functionsReached:
        - k5_size_auth_context
        - k5_size_authdata
        - k5_size_authdata_context
        - k5_size_context
        - k5_size_keyblock
        - k5_size_principal
        - kg_oid_size
        - kg_seqstate_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:261,20'
          Dst:             k5_size_principal
        - Src:             'ser_sctx.c:264,20'
          Dst:             k5_size_principal
        - Src:             'ser_sctx.c:267,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_sctx.c:270,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_sctx.c:273,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_sctx.c:276,20'
          Dst:             kg_oid_size
        - Src:             'ser_sctx.c:279,20'
          Dst:             kg_seqstate_size
        - Src:             'ser_sctx.c:282,20'
          Dst:             k5_size_context
        - Src:             'ser_sctx.c:284,20'
          Dst:             k5_size_auth_context
        - Src:             'ser_sctx.c:286,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_sctx.c:292,24'
          Dst:             k5_size_authdata
        - Src:             'ser_sctx.c:300,24'
          Dst:             k5_size_authdata_context
    - functionName:    kg_oid_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_seqstate_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/ser_sctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssint_g_seqstate_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_sctx.c:200,9'
          Dst:             gssint_g_seqstate_size
    - functionName:    gss_krb5int_ccache_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/set_ccache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          143
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - gss_krb5int_initialize_library
        - kg_get_ccache_name
        - kg_set_ccache_name
        - krb5int_getspecific
        - krb5int_setspecific
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'set_ccache.c:45,11'
          Dst:             gss_krb5int_initialize_library
        - Src:             'set_ccache.c:51,5'
          Dst:             __assert_fail
        - Src:             'set_ccache.c:60,16'
          Dst:             kg_set_ccache_name
        - Src:             'set_ccache.c:63,5'
          Dst:             kg_get_ccache_name
        - Src:             'set_ccache.c:66,5'
          Dst:             kg_set_ccache_name
        - Src:             'set_ccache.c:72,16'
          Dst:             krb5int_getspecific
        - Src:             'set_ccache.c:73,11'
          Dst:             krb5int_setspecific
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    copy_initiator_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          390
      EdgeCount:       90
      CyclomaticComplexity: 27
      functionsReached:
        - k5_mutex_unlock
        - kg_sync_ccache_name
        - kg_value_from_cred_store
        - krb5_cc_cache_match
        - krb5_cc_close
        - krb5_cc_copy_creds
        - krb5_cc_default
        - krb5_cc_destroy
        - krb5_cc_get_principal
        - krb5_cc_get_type
        - krb5_cc_initialize
        - krb5_cc_move
        - krb5_cc_new_unique
        - krb5_cc_set_default_name
        - krb5_cc_support_switch
        - krb5_cc_switch
        - krb5_free_context
        - krb5_free_principal
        - krb5_gss_init_context
        - krb5_gss_validate_cred_1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'store_cred.c:49,11'
          Dst:             krb5_gss_init_context
        - Src:             'store_cred.c:53,20'
          Dst:             krb5_gss_validate_cred_1
        - Src:             'store_cred.c:67,20'
          Dst:             kg_value_from_cred_store
        - Src:             'store_cred.c:73,15'
          Dst:             krb5_cc_set_default_name
        - Src:             'store_cred.c:77,24'
          Dst:             kg_sync_ccache_name
        - Src:             'store_cred.c:83,11'
          Dst:             krb5_cc_default
        - Src:             'store_cred.c:86,15'
          Dst:             krb5_cc_get_type
        - Src:             'store_cred.c:88,9'
          Dst:             krb5_cc_support_switch
        - Src:             'store_cred.c:90,15'
          Dst:             krb5_cc_cache_match
        - Src:             'store_cred.c:96,19'
          Dst:             krb5_cc_new_unique
        - Src:             'store_cred.c:104,15'
          Dst:             krb5_cc_get_principal
        - Src:             'store_cred.c:105,9'
          Dst:             krb5_free_principal
        - Src:             'store_cred.c:112,11'
          Dst:             krb5_cc_new_unique
        - Src:             'store_cred.c:115,11'
          Dst:             krb5_cc_initialize
        - Src:             'store_cred.c:118,11'
          Dst:             krb5_cc_copy_creds
        - Src:             'store_cred.c:121,11'
          Dst:             krb5_cc_move
        - Src:             'store_cred.c:127,15'
          Dst:             krb5_cc_switch
        - Src:             'store_cred.c:137,9'
          Dst:             k5_mutex_unlock
        - Src:             'store_cred.c:139,9'
          Dst:             krb5_cc_close
        - Src:             'store_cred.c:141,9'
          Dst:             krb5_cc_close
        - Src:             'store_cred.c:143,9'
          Dst:             krb5_cc_destroy
        - Src:             'store_cred.c:144,5'
          Dst:             krb5_free_context
    - functionName:    krb5_gss_store_cred_into
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          160
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - copy_initiator_creds
        - krb5_gss_inquire_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'store_cred.c:199,20'
          Dst:             krb5_gss_inquire_cred
        - Src:             'store_cred.c:213,20'
          Dst:             copy_initiator_creds
    - functionName:    krb5_gss_store_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/store_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_gss_store_cred_into
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'store_cred.c:164,12'
          Dst:             krb5_gss_store_cred_into
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_verify_checksum_iov_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - checksum_iov_v3
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_cksum.c:266,12'
          Dst:             checksum_iov_v3
    - functionName:    checksum_iov_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          368
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
        - kg_locate_header_iov
        - kg_locate_iov
        - kg_translate_flag_iov
        - krb5_c_crypto_length
        - krb5_k_make_checksum_iov
        - krb5_k_verify_checksum_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_cksum.c:181,12'
          Dst:             krb5_c_crypto_length
        - Src:             'util_cksum.c:185,14'
          Dst:             kg_locate_header_iov
        - Src:             'util_cksum.c:186,5'
          Dst:             __assert_fail
        - Src:             'util_cksum.c:188,15'
          Dst:             kg_locate_iov
        - Src:             'util_cksum.c:189,5'
          Dst:             __assert_fail
        - Src:             'util_cksum.c:208,25'
          Dst:             kg_translate_flag_iov
        - Src:             'util_cksum.c:232,16'
          Dst:             krb5_k_verify_checksum_iov
        - Src:             'util_cksum.c:234,16'
          Dst:             krb5_k_make_checksum_iov
    - functionName:    kg_make_checksum_iov_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - checksum_iov_v3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_cksum.c:251,12'
          Dst:             checksum_iov_v3
    - functionName:    kg_make_checksum_iov_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          333
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - calloc
        - kg_confounder_size
        - kg_locate_header_iov
        - kg_translate_flag_iov
        - krb5_k_make_checksum_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_cksum.c:101,14'
          Dst:             kg_locate_header_iov
        - Src:             'util_cksum.c:102,5'
          Dst:             __assert_fail
        - Src:             'util_cksum.c:104,12'
          Dst:             calloc
        - Src:             'util_cksum.c:110,20'
          Dst:             kg_confounder_size
        - Src:             'util_cksum.c:140,25'
          Dst:             kg_translate_flag_iov
        - Src:             'util_cksum.c:146,12'
          Dst:             krb5_k_make_checksum_iov
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_buf_add_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_le
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:153,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:156,9'
          Dst:             store_32_le
    - functionName:    kg_checksum_channel_bindings
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          169
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - k5_buf_add_len
        - k5_buf_add_uint32_le
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5_buf_status
        - krb5_c_checksum_length
        - krb5_c_make_checksum
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_cksum.c:40,12'
          Dst:             krb5_c_checksum_length
        - Src:             'util_cksum.c:58,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'util_cksum.c:59,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'util_cksum.c:60,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'util_cksum.c:61,5'
          Dst:             k5_buf_add_len
        - Src:             'util_cksum.c:63,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'util_cksum.c:64,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'util_cksum.c:65,5'
          Dst:             k5_buf_add_len
        - Src:             'util_cksum.c:67,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'util_cksum.c:68,5'
          Dst:             k5_buf_add_len
        - Src:             'util_cksum.c:70,12'
          Dst:             k5_buf_status
        - Src:             'util_cksum.c:76,14'
          Dst:             make_data
        - Src:             'util_cksum.c:77,12'
          Dst:             krb5_c_make_checksum
        - Src:             'util_cksum.c:79,5'
          Dst:             k5_buf_free
    - functionName:    kg_translate_iov_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          280
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - kg_confounder_size
        - kg_locate_iov
        - kg_translate_flag_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:363,16'
          Dst:             kg_confounder_size
        - Src:             'util_crypt.c:365,14'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:366,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:371,15'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:372,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:392,25'
          Dst:             kg_translate_flag_iov
    - functionName:    kg_confounder_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_c_block_size
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:139,12'
          Dst:             krb5_c_block_size
    - functionName:    kg_locate_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_translate_flag_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          33
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'util_crypt.c:619,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    kg_translate_iov_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          419
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - kg_locate_iov
        - kg_translate_flag_iov
        - krb5_c_crypto_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:435,14'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:436,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:438,15'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:439,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:441,12'
          Dst:             krb5_c_crypto_length
        - Src:             'util_crypt.c:446,12'
          Dst:             krb5_c_crypto_length
        - Src:             'util_crypt.c:489,25'
          Dst:             kg_translate_flag_iov
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_allocate_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - gssalloc_malloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:795,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:796,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:799,25'
          Dst:             gssalloc_malloc
    - functionName:    kg_integ_only_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:780,5'
          Dst:             __assert_fail
    - functionName:    kg_fixup_padding_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          150
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - kg_locate_iov
        - kg_release_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:719,12'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:720,15'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:763,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:767,5'
          Dst:             kg_release_iov
    - functionName:    kg_release_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gssalloc_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:698,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:702,13'
          Dst:             gssalloc_free
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_iov_msglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          123
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:674,5'
          Dst:             __assert_fail
    - functionName:    kg_locate_header_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_locate_iov
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:662,16'
          Dst:             kg_locate_iov
        - Src:             'util_crypt.c:664,16'
          Dst:             kg_locate_iov
    - functionName:    kg_arcfour_docrypt_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_translate_iov
        - krb5int_arcfour_gsscrypt
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:600,20'
          Dst:             make_data
        - Src:             'util_crypt.c:604,12'
          Dst:             kg_translate_iov
        - Src:             'util_crypt.c:609,12'
          Dst:             krb5int_arcfour_gsscrypt
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_translate_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_translate_iov_v1
        - kg_translate_iov_v3
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:533,9'
          Dst:             kg_translate_iov_v3
        - Src:             'util_crypt.c:535,9'
          Dst:             kg_translate_iov_v1
    - functionName:    kg_decrypt_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - iv_to_state
        - kg_translate_iov
        - krb5_free_data
        - krb5_k_decrypt_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:577,12'
          Dst:             iv_to_state
        - Src:             'util_crypt.c:581,12'
          Dst:             kg_translate_iov
        - Src:             'util_crypt.c:585,16'
          Dst:             krb5_k_decrypt_iov
        - Src:             'util_crypt.c:589,5'
          Dst:             krb5_free_data
    - functionName:    iv_to_state
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - alloc_data
        - k5alloc
        - krb5_c_block_size
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:177,12'
          Dst:             krb5_c_block_size
        - Src:             'util_crypt.c:181,12'
          Dst:             k5alloc
        - Src:             'util_crypt.c:184,12'
          Dst:             alloc_data
    - functionName:    kg_encrypt_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - iv_to_state
        - kg_translate_iov
        - krb5_free_data
        - krb5_k_encrypt_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:549,12'
          Dst:             iv_to_state
        - Src:             'util_crypt.c:553,12'
          Dst:             kg_translate_iov
        - Src:             'util_crypt.c:557,16'
          Dst:             krb5_k_encrypt_iov
        - Src:             'util_crypt.c:561,5'
          Dst:             krb5_free_data
    - functionName:    store_64_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:570,5'
          Dst:             __bswap_64
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    kg_verify_checksum_v3
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - short
        - char
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          129
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_verify_checksum_iov
        - make_data
        - store_16_be
        - store_32_be
        - store_64_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:331,5'
          Dst:             store_16_be
        - Src:             'util_crypt.c:334,5'
          Dst:             store_32_be
        - Src:             'util_crypt.c:335,5'
          Dst:             store_64_be
        - Src:             'util_crypt.c:339,19'
          Dst:             make_data
        - Src:             'util_crypt.c:340,19'
          Dst:             make_data
        - Src:             'util_crypt.c:342,19'
          Dst:             make_data
        - Src:             'util_crypt.c:343,12'
          Dst:             krb5_k_verify_checksum_iov
    - functionName:    kg_verify_checksum_v1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          154
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - abort
        - k5_bcmp
        - krb5_k_make_checksum_iov
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:295,9'
          Dst:             abort
        - Src:             'util_crypt.c:298,19'
          Dst:             make_data
        - Src:             'util_crypt.c:299,19'
          Dst:             make_data
        - Src:             'util_crypt.c:301,19'
          Dst:             make_data
        - Src:             'util_crypt.c:305,11'
          Dst:             krb5_k_make_checksum_iov
        - Src:             'util_crypt.c:308,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:309,12'
          Dst:             k5_bcmp
    - functionName:    kg_arcfour_docrypt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_arcfour_gsscrypt
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:268,20'
          Dst:             make_data
        - Src:             'util_crypt.c:273,17'
          Dst:             make_data
        - Src:             'util_crypt.c:274,12'
          Dst:             krb5int_arcfour_gsscrypt
    - functionName:    kg_decrypt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iv_to_state
        - krb5_free_data
        - krb5_k_decrypt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:246,12'
          Dst:             iv_to_state
        - Src:             'util_crypt.c:257,12'
          Dst:             krb5_k_decrypt
        - Src:             'util_crypt.c:258,5'
          Dst:             krb5_free_data
    - functionName:    kg_encrypt_inplace
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iv_to_state
        - krb5_free_data
        - krb5_k_encrypt_iov
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:225,12'
          Dst:             iv_to_state
        - Src:             'util_crypt.c:230,16'
          Dst:             make_data
        - Src:             'util_crypt.c:231,12'
          Dst:             krb5_k_encrypt_iov
        - Src:             'util_crypt.c:232,5'
          Dst:             krb5_free_data
    - functionName:    kg_encrypt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iv_to_state
        - krb5_free_data
        - krb5_k_encrypt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:202,12'
          Dst:             iv_to_state
        - Src:             'util_crypt.c:212,12'
          Dst:             krb5_k_encrypt
        - Src:             'util_crypt.c:213,5'
          Dst:             krb5_free_data
    - functionName:    kg_make_confounder
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_confounder_size
        - krb5_c_random_make_octets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:153,16'
          Dst:             kg_confounder_size
        - Src:             'util_crypt.c:160,12'
          Dst:             krb5_c_random_make_octets
    - functionName:    kg_copy_keys
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_crypt.c:62,5'
          Dst:             krb5_k_free_key
        - Src:             'util_crypt.c:64,12'
          Dst:             krb5_k_create_key
        - Src:             'util_crypt.c:68,5'
          Dst:             krb5_k_free_key
        - Src:             'util_crypt.c:70,12'
          Dst:             krb5_k_create_key
    - functionName:    kg_setup_keys
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          174
      EdgeCount:       28
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - kg_copy_keys
        - krb5int_c_mandatory_cksumtype
      functionUses:    4
      BranchProfiles:
        - Branch String:   'util_crypt.c:99,5'
          Branch Sides:    []
      Callsites:
        - Src:             'util_crypt.c:83,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:84,5'
          Dst:             __assert_fail
        - Src:             'util_crypt.c:94,12'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'util_crypt.c:101,16'
          Dst:             kg_copy_keys
        - Src:             'util_crypt.c:115,16'
          Dst:             kg_copy_keys
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kg_get_seq_num
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_seqnum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          193
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - kg_arcfour_docrypt
        - kg_decrypt
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'util_seqnum.c:66,16'
          Dst:             kg_arcfour_docrypt
        - Src:             'util_seqnum.c:71,16'
          Dst:             kg_decrypt
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    kg_make_seq_num
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/util_seqnum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          89
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - kg_arcfour_docrypt
        - kg_encrypt
        - store_32_be
        - store_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_seqnum.c:45,9'
          Dst:             store_32_be
        - Src:             'util_seqnum.c:46,16'
          Dst:             kg_arcfour_docrypt
        - Src:             'util_seqnum.c:53,5'
          Dst:             store_32_le
        - Src:             'util_seqnum.c:54,12'
          Dst:             kg_encrypt
    - functionName:    krb5_gss_validate_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/val_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_unlock
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_save_error_info
        - krb5_gss_validate_cred_1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'val_cred.c:68,12'
          Dst:             krb5_gss_init_context
        - Src:             'val_cred.c:74,11'
          Dst:             krb5_gss_validate_cred_1
        - Src:             'val_cred.c:78,9'
          Dst:             k5_mutex_unlock
        - Src:             'val_cred.c:80,5'
          Dst:             krb5_gss_save_error_info
        - Src:             'val_cred.c:81,5'
          Dst:             krb5_free_context
    - functionName:    krb5_gss_validate_cred_1
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/val_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_cc_get_principal
        - krb5_free_principal
        - krb5_principal_compare
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'val_cred.c:41,5'
          Dst:             k5_mutex_lock
        - Src:             'val_cred.c:44,21'
          Dst:             krb5_cc_get_principal
        - Src:             'val_cred.c:45,13'
          Dst:             k5_mutex_unlock
        - Src:             'val_cred.c:49,16'
          Dst:             krb5_principal_compare
        - Src:             'val_cred.c:50,15'
          Dst:             krb5_free_principal
        - Src:             'val_cred.c:52,13'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    krb5_gss_wrap_size_limit
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/wrap_size_limit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          313
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - gssint_g_token_size
        - kg_confounder_size
        - krb5_c_checksum_length
        - krb5_encrypt_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'wrap_size_limit.c:112,30'
          Dst:             krb5_encrypt_size
        - Src:             'wrap_size_limit.c:135,19'
          Dst:             krb5_c_checksum_length
        - Src:             'wrap_size_limit.c:156,15'
          Dst:             kg_confounder_size
        - Src:             'wrap_size_limit.c:158,13'
          Dst:             gssint_g_token_size
    - functionName:    initialize_k5g_error_table
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/gssapi_err_krb5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_err_krb5.c:52,12'
          Dst:             add_error_table
    - functionName:    gssalloc_strdup
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssalloc_malloc
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:122,19'
          Dst:             strlen
        - Src:             '../../../include/gssapi/gssapi_alloc.h:123,18'
          Dst:             gssalloc_malloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_spnego_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3593
      functionLinenumberEnd: 3594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssalloc_strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3594,25'
          Dst:             gssalloc_strdup
    - functionName:    acc_ctx_vfy_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          174
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gss_release_oid_set
        - gss_test_oid_set_member
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - gssint_mecherrmap_map_errcode
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1433,6'
          Dst:             memcmp
        - Src:             'spnego_mech.c:1436,9'
          Dst:             gssint_get_mechanism
        - Src:             'spnego_mech.c:1439,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'spnego_mech.c:1447,3'
          Dst:             gssint_mecherrmap_map
        - Src:             'spnego_mech.c:1450,8'
          Dst:             gss_test_oid_set_member
        - Src:             'spnego_mech.c:1456,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'spnego_mech.c:1462,2'
          Dst:             gss_release_oid_set
    - functionName:    get_req_flags
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3395
      functionLinenumberEnd: 3404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - k5_input_get_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3397,6'
          Dst:             k5_input_get_byte
        - Src:             'spnego_mech.c:3398,6'
          Dst:             k5_input_get_byte
        - Src:             'spnego_mech.c:3399,6'
          Dst:             k5_input_get_byte
        - Src:             'spnego_mech.c:3402,15'
          Dst:             k5_input_get_byte
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mech_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3325
      functionLinenumberEnd: 3356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          99
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - generic_gss_release_oid
        - get_mech_oid
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
        - k5_der_get_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3330,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3333,17'
          Dst:             gss_create_empty_oid_set
        - Src:             'spnego_mech.c:3339,23'
          Dst:             get_mech_oid
        - Src:             'spnego_mech.c:3342,4'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:3346,18'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:3348,3'
          Dst:             generic_gss_release_oid
        - Src:             'spnego_mech.c:3350,4'
          Dst:             gss_release_oid_set
    - functionName:    k5_der_get_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_der_get_taglen
        - k5_input_get_bytes
        - k5_input_init
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:160,10'
          Dst:             k5_der_get_taglen
        - Src:             '../../../include/k5-der.h:162,13'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-der.h:165,5'
          Dst:             k5_input_init
    - functionName:    get_mech_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3264
      functionLinenumberEnd: 3282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - generic_gss_copy_oid
        - gssint_mecherrmap_map_errcode
        - k5_der_get_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3270,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3275,11'
          Dst:             generic_gss_copy_oid
        - Src:             'spnego_mech.c:3277,3'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    k5_der_get_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - k5_input_get_byte
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:123,11'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:124,15'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:131,17'
          Dst:             k5_input_set_status
        - Src:             '../../../include/k5-der.h:134,32'
          Dst:             k5_input_get_byte
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_token_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3791
      functionLinenumberEnd: 3803
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_der_get_value
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3795,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3797,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3802,9'
          Dst:             memcmp
    - functionName:    negotiate_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3555
      functionLinenumberEnd: 3582
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          177
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3564,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:3570,8'
          Dst:             memcmp
    - functionName:    get_negTokenInit
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3414
      functionLinenumberEnd: 3476
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          213
      EdgeCount:       47
      CyclomaticComplexity: 15
      functionsReached:
        - get_mech_set
        - get_octet_string
        - get_req_flags
        - gssalloc_malloc
        - k5_der_get_value
        - k5_input_init
        - verify_token_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3425,2'
          Dst:             k5_input_init
        - Src:             'spnego_mech.c:3428,8'
          Dst:             verify_token_header
        - Src:             'spnego_mech.c:3433,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3437,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3442,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3446,23'
          Dst:             gssalloc_malloc
        - Src:             'spnego_mech.c:3453,13'
          Dst:             get_mech_set
        - Src:             'spnego_mech.c:3457,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3458,9'
          Dst:             get_req_flags
        - Src:             'spnego_mech.c:3463,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3464,14'
          Dst:             get_octet_string
        - Src:             'spnego_mech.c:3469,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3470,18'
          Dst:             get_octet_string
    - functionName:    get_octet_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3291
      functionLinenumberEnd: 3315
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gssalloc_malloc
        - k5_der_get_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3295,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3304,24'
          Dst:             gssalloc_malloc
    - functionName:    make_NegHints
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          112
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gssalloc_malloc
        - k5_buf_init_fixed
        - k5_der_add_taglen
        - k5_der_add_value
        - k5_der_value_len
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1178,30'
          Dst:             strlen
        - Src:             'spnego_mech.c:1184,13'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:1185,9'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:1187,6'
          Dst:             gssalloc_malloc
        - Src:             'spnego_mech.c:1192,2'
          Dst:             k5_buf_init_fixed
        - Src:             'spnego_mech.c:1194,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:1195,2'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:1196,2'
          Dst:             __assert_fail
    - functionName:    k5_der_value_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_der_len_len
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:68,16'
          Dst:             k5_der_len_len
    - functionName:    k5_der_add_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_get_space
        - k5_der_len_len
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:77,19'
          Dst:             k5_der_len_len
        - Src:             '../../../include/k5-der.h:79,9'
          Dst:             k5_buf_get_space
    - functionName:    k5_der_add_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_der_add_taglen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:102,5'
          Dst:             k5_der_add_taglen
        - Src:             '../../../include/k5-der.h:103,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_der_len_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntlmssp_reset_crypto_state
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          82
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - gss_set_sec_context_option
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:519,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:524,10'
          Dst:             gss_set_sec_context_option
    - functionName:    process_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          171
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - gss_get_mic
        - gss_release_buffer
        - gss_verify_mic
        - ntlmssp_reset_crypto_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:611,9'
          Dst:             gss_verify_mic
        - Src:             'spnego_mech.c:615,10'
          Dst:             ntlmssp_reset_crypto_state
        - Src:             'spnego_mech.c:626,9'
          Dst:             gss_get_mic
        - Src:             'spnego_mech.c:631,10'
          Dst:             ntlmssp_reset_crypto_state
        - Src:             'spnego_mech.c:633,4'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:639,4'
          Dst:             gss_release_buffer
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_ctx_reselect
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          189
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - gss_delete_sec_context
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:844,2'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:849,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:863,8'
          Dst:             memcmp
    - functionName:    is_kerb_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3817
      functionLinenumberEnd: 3825
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_test_oid_set_member
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3822,9'
          Dst:             gss_test_oid_set_member
    - functionName:    init_ctx_nego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          200
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_mecherrmap_map_errcode
        - init_ctx_reselect
        - is_kerb_mech
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:791,8'
          Dst:             is_kerb_mech
        - Src:             'spnego_mech.c:792,8'
          Dst:             is_kerb_mech
        - Src:             'spnego_mech.c:793,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:794,9'
          Dst:             init_ctx_reselect
        - Src:             'spnego_mech.c:813,4'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    get_negTokenResp
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3483
      functionLinenumberEnd: 3537
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          206
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - get_mech_oid
        - get_octet_string
        - gss_release_buffer
        - k5_der_get_value
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3491,7'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3496,8'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3498,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3499,8'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3506,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3507,20'
          Dst:             get_mech_oid
        - Src:             'spnego_mech.c:3512,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3513,20'
          Dst:             get_octet_string
        - Src:             'spnego_mech.c:3518,6'
          Dst:             k5_der_get_value
        - Src:             'spnego_mech.c:3519,18'
          Dst:             get_octet_string
        - Src:             'spnego_mech.c:3526,22'
          Dst:             memcmp
        - Src:             'spnego_mech.c:3530,4'
          Dst:             gss_release_buffer
    - functionName:    negoex_and_spnego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3141
      functionLinenumberEnd: 3155
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - generic_gss_test_oid_set_member
        - gss_inquire_attrs_for_mech
        - gss_release_oid_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3146,8'
          Dst:             gss_inquire_attrs_for_mech
        - Src:             'spnego_mech.c:3150,9'
          Dst:             generic_gss_test_oid_set_member
        - Src:             'spnego_mech.c:3153,9'
          Dst:             gss_release_oid_set
    - functionName:    put_mech_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3363
      functionLinenumberEnd: 3389
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          129
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gssalloc_malloc
        - k5_buf_init_fixed
        - k5_der_add_taglen
        - k5_der_add_value
        - k5_der_value_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3370,14'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3371,9'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3373,8'
          Dst:             gssalloc_malloc
        - Src:             'spnego_mech.c:3376,2'
          Dst:             k5_buf_init_fixed
        - Src:             'spnego_mech.c:3378,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3380,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3384,2'
          Dst:             __assert_fail
    - functionName:    get_negotiable_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3165
      functionLinenumberEnd: 3253
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          303
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - get_available_mechs
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_inquire_cred
        - gss_release_cred
        - gss_release_oid_set
        - gss_test_oid_set_member
        - gssint_mecherrmap_map_errcode
        - gssspi_query_mechanism_info
        - negoex_add_auth_mech
        - negoex_and_spnego
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3175,9'
          Dst:             gss_inquire_cred
        - Src:             'spnego_mech.c:3181,9'
          Dst:             get_available_mechs
        - Src:             'spnego_mech.c:3186,3'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:3194,8'
          Dst:             gss_create_empty_oid_set
        - Src:             'spnego_mech.c:3201,4'
          Dst:             gss_test_oid_set_member
        - Src:             'spnego_mech.c:3208,9'
          Dst:             gssspi_query_mechanism_info
        - Src:             'spnego_mech.c:3212,10'
          Dst:             negoex_add_auth_mech
        - Src:             'spnego_mech.c:3221,11'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:3231,9'
          Dst:             negoex_and_spnego
        - Src:             'spnego_mech.c:3236,9'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:3247,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'spnego_mech.c:3251,2'
          Dst:             gss_release_oid_set
    - functionName:    get_available_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3084
      functionLinenumberEnd: 3135
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          149
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gss_acquire_cred_from
        - gss_indicate_mechs_by_attrs
        - gss_release_oid_set
        - gssint_mecherrmap_map_errcode
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3097,17'
          Dst:             gss_indicate_mechs_by_attrs
        - Src:             'spnego_mech.c:3109,18'
          Dst:             gss_acquire_cred_from
        - Src:             'spnego_mech.c:3120,11'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:3128,10'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:3130,3'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    spnego_gss_get_mic_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3023
      functionLinenumberEnd: 3031
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_get_mic_iov_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3029,12'
          Dst:             gss_get_mic_iov_length
    - functionName:    spnego_gss_verify_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3009
      functionLinenumberEnd: 3017
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_verify_mic_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3015,12'
          Dst:             gss_verify_mic_iov
    - functionName:    spnego_gss_get_mic_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2995
      functionLinenumberEnd: 3003
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_get_mic_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3001,12'
          Dst:             gss_get_mic_iov
    - functionName:    spnego_gss_import_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2974
      functionLinenumberEnd: 2989
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - create_spnego_cred
        - gss_import_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2979,8'
          Dst:             gss_import_cred
        - Src:             'spnego_mech.c:2983,8'
          Dst:             create_spnego_cred
    - functionName:    create_spnego_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:316,11'
          Dst:             calloc
    - functionName:    spnego_gss_export_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2964
      functionLinenumberEnd: 2967
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_export_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2967,10'
          Dst:             gss_export_cred
    - functionName:    spnego_gss_inquire_attrs_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2930
      functionLinenumberEnd: 2958
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          100
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2939,10'
          Dst:             gss_create_empty_oid_set
        - Src:             'spnego_mech.c:2950,2'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2951,2'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2955,3'
          Dst:             gss_release_oid_set
    - functionName:    spnego_gss_inquire_saslname_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2906
      functionLinenumberEnd: 2923
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          93
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_g_make_string_buffer
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2909,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:2912,7'
          Dst:             gssint_g_make_string_buffer
        - Src:             'spnego_mech.c:2913,7'
          Dst:             gssint_g_make_string_buffer
        - Src:             'spnego_mech.c:2914,7'
          Dst:             gssint_g_make_string_buffer
    - functionName:    spnego_gss_inquire_mech_for_saslname
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2888
      functionLinenumberEnd: 2898
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2890,6'
          Dst:             memcmp
    - functionName:    spnego_gss_set_neg_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2864
      functionLinenumberEnd: 2878
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generic_gss_copy_oid_set
        - gss_release_oid_set
        - gss_set_neg_mechs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2869,2'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:2870,8'
          Dst:             generic_gss_copy_oid_set
        - Src:             'spnego_mech.c:2873,10'
          Dst:             gss_set_neg_mechs
    - functionName:    spnego_gss_pseudo_random
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2844
      functionLinenumberEnd: 2858
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_pseudo_random
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2851,8'
          Dst:             gss_pseudo_random
    - functionName:    spnego_gss_release_any_name_mapping
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2828
      functionLinenumberEnd: 2834
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_release_any_name_mapping
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2830,8'
          Dst:             gss_release_any_name_mapping
    - functionName:    spnego_gss_map_name_to_any
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2813
      functionLinenumberEnd: 2820
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_map_name_to_any
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2815,8'
          Dst:             gss_map_name_to_any
    - functionName:    spnego_gss_export_name_composite
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2799
      functionLinenumberEnd: 2804
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_export_name_composite
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2801,8'
          Dst:             gss_export_name_composite
    - functionName:    spnego_gss_delete_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2787
      functionLinenumberEnd: 2792
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_delete_name_attribute
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2789,8'
          Dst:             gss_delete_name_attribute
    - functionName:    spnego_gss_set_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2773
      functionLinenumberEnd: 2780
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_set_name_attribute
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2775,8'
          Dst:             gss_set_name_attribute
    - functionName:    spnego_gss_get_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2754
      functionLinenumberEnd: 2764
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_get_name_attribute
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2756,8'
          Dst:             gss_get_name_attribute
    - functionName:    spnego_gss_inquire_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2735
      functionLinenumberEnd: 2742
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_inquire_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2737,8'
          Dst:             gss_inquire_name
    - functionName:    spnego_gss_display_name_ext
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2719
      functionLinenumberEnd: 2725
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_display_name_ext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2721,8'
          Dst:             gss_display_name_ext
    - functionName:    spnego_gss_acquire_cred_with_password
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2671
      functionLinenumberEnd: 2711
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - create_spnego_cred
        - get_available_mechs
        - gss_acquire_cred_with_password
        - gss_release_cred
        - gss_release_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2685,11'
          Dst:             get_available_mechs
        - Src:             'spnego_mech.c:2691,11'
          Dst:             gss_acquire_cred_with_password
        - Src:             'spnego_mech.c:2698,11'
          Dst:             create_spnego_cred
        - Src:             'spnego_mech.c:2707,9'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:2708,9'
          Dst:             gss_release_cred
    - functionName:    spnego_gss_acquire_cred_impersonate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2617
      functionLinenumberEnd: 2659
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          143
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - create_spnego_cred
        - gss_acquire_cred_impersonate_name
        - gss_inquire_cred
        - gss_release_cred
        - gss_release_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2633,11'
          Dst:             gss_inquire_cred
        - Src:             'spnego_mech.c:2638,11'
          Dst:             gss_acquire_cred_impersonate_name
        - Src:             'spnego_mech.c:2646,11'
          Dst:             create_spnego_cred
        - Src:             'spnego_mech.c:2654,9'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:2655,9'
          Dst:             gss_release_cred
    - functionName:    spnego_gss_complete_auth_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2594
      functionLinenumberEnd: 2605
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_complete_auth_token
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2601,8'
          Dst:             gss_complete_auth_token
    - functionName:    spnego_gss_wrap_iov_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2571
      functionLinenumberEnd: 2586
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_wrap_iov_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2578,8'
          Dst:             gss_wrap_iov_length
    - functionName:    spnego_gss_unwrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2547
      functionLinenumberEnd: 2561
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_unwrap_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2554,8'
          Dst:             gss_unwrap_iov
    - functionName:    spnego_gss_wrap_iov
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2523
      functionLinenumberEnd: 2538
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_wrap_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2530,8'
          Dst:             gss_wrap_iov
    - functionName:    spnego_gss_unwrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2498
      functionLinenumberEnd: 2513
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_unwrap_aead
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2505,8'
          Dst:             gss_unwrap_aead
    - functionName:    spnego_gss_wrap_aead
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2471
      functionLinenumberEnd: 2488
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_wrap_aead
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2478,8'
          Dst:             gss_wrap_aead
    - functionName:    spnego_gss_set_sec_context_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2446
      functionLinenumberEnd: 2460
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_set_sec_context_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2455,8'
          Dst:             gss_set_sec_context_option
    - functionName:    spnego_gss_set_cred_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2405
      functionLinenumberEnd: 2438
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - create_spnego_cred
        - gss_release_cred
        - gss_set_cred_option
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2412,8'
          Dst:             gss_set_cred_option
        - Src:             'spnego_mech.c:2422,9'
          Dst:             create_spnego_cred
        - Src:             'spnego_mech.c:2424,4'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:2434,6'
          Dst:             memcmp
    - functionName:    spnego_gss_inquire_cred_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2380
      functionLinenumberEnd: 2389
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_inquire_cred_by_oid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2385,8'
          Dst:             gss_inquire_cred_by_oid
    - functionName:    spnego_gss_inquire_sec_context_by_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2359
      functionLinenumberEnd: 2372
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_inquire_sec_context_by_oid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2367,8'
          Dst:             gss_inquire_sec_context_by_oid
    - functionName:    spnego_gss_verify_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2338
      functionLinenumberEnd: 2351
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_verify_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2345,8'
          Dst:             gss_verify_mic
    - functionName:    spnego_gss_get_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2316
      functionLinenumberEnd: 2329
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_get_mic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2323,8'
          Dst:             gss_get_mic
    - functionName:    spnego_gss_localname
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2305
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_localname
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2306,9'
          Dst:             gss_localname
    - functionName:    spnego_gss_wrap_size_limit
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2286
      functionLinenumberEnd: 2300
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_wrap_size_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2293,8'
          Dst:             gss_wrap_size_limit
    - functionName:    spnego_gss_inquire_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2275
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          199
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - gss_inquire_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2250,9'
          Dst:             gss_inquire_context
    - functionName:    create_spnego_ctx
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          113
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    spnego_gss_import_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2188
      functionLinenumberEnd: 2216
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - create_spnego_ctx
        - gss_delete_sec_context
        - gss_import_sec_context
        - gss_inquire_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2194,8'
          Dst:             gss_import_sec_context
        - Src:             'spnego_mech.c:2198,8'
          Dst:             gss_inquire_context
        - Src:             'spnego_mech.c:2203,10'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:2207,7'
          Dst:             create_spnego_ctx
        - Src:             'spnego_mech.c:2209,10'
          Dst:             gss_delete_sec_context
    - functionName:    spnego_gss_export_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2164
      functionLinenumberEnd: 2181
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_export_sec_context
        - release_spnego_ctx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2173,8'
          Dst:             gss_export_sec_context
        - Src:             'spnego_mech.c:2177,3'
          Dst:             release_spnego_ctx
    - functionName:    release_spnego_ctx
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3041
      functionLinenumberEnd: 3060
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_release_buffer
        - gss_release_cred
        - gss_release_name
        - gss_release_oid_set
        - negoex_release_context
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3047,10'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:3050,10'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:3052,10'
          Dst:             gss_release_name
        - Src:             'spnego_mech.c:3053,10'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:3055,3'
          Dst:             negoex_release_context
    - functionName:    spnego_gss_context_time
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2146
      functionLinenumberEnd: 2157
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_context_time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2153,8'
          Dst:             gss_context_time
    - functionName:    spnego_gss_delete_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2121
      functionLinenumberEnd: 2139
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gss_delete_sec_context
        - release_spnego_ctx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2134,9'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:2136,9'
          Dst:             release_spnego_ctx
    - functionName:    spnego_gss_process_context_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2101
      functionLinenumberEnd: 2114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_process_context_token
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2109,8'
          Dst:             gss_process_context_token
    - functionName:    spnego_gss_wrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2078
      functionLinenumberEnd: 2094
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_wrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2085,8'
          Dst:             gss_wrap
    - functionName:    spnego_gss_unwrap
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2052
      functionLinenumberEnd: 2067
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_unwrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2059,8'
          Dst:             gss_unwrap
    - functionName:    spnego_gss_inquire_names_for_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2006
      functionLinenumberEnd: 2042
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          133
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:2014,7'
          Dst:             memcmp
        - Src:             'spnego_mech.c:2019,10'
          Dst:             gss_create_empty_oid_set
        - Src:             'spnego_mech.c:2022,17'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2025,17'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2028,17'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2031,12'
          Dst:             gss_add_oid_set_member
        - Src:             'spnego_mech.c:2037,11'
          Dst:             gss_release_oid_set
    - functionName:    spnego_gss_display_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1988
      functionLinenumberEnd: 1996
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_display_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1992,11'
          Dst:             gss_display_name
    - functionName:    spnego_gss_compare_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1970
      functionLinenumberEnd: 1977
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_compare_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1974,11'
          Dst:             gss_compare_name
    - functionName:    spnego_gss_inquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1898
      functionLinenumberEnd: 1961
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          146
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - get_available_mechs
        - gss_inquire_cred
        - gss_inquire_cred_by_mech
        - gss_release_cred
        - gss_release_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1914,12'
          Dst:             get_available_mechs
        - Src:             'spnego_mech.c:1926,4'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:1927,4'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:1932,3'
          Dst:             __assert_fail
        - Src:             'spnego_mech.c:1934,12'
          Dst:             gss_inquire_cred_by_mech
        - Src:             'spnego_mech.c:1942,4'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:1951,3'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:1953,12'
          Dst:             gss_inquire_cred
    - functionName:    spnego_gss_duplicate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_duplicate_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1884,11'
          Dst:             gss_duplicate_name
    - functionName:    spnego_gss_release_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1862
      functionLinenumberEnd: 1870
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_release_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1867,11'
          Dst:             gss_release_name
    - functionName:    spnego_gss_import_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1845
      functionLinenumberEnd: 1854
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_import_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1850,11'
          Dst:             gss_import_name
    - functionName:    make_err_msg
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3599
      functionLinenumberEnd: 3610
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - make_spnego_token
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3606,19'
          Dst:             strlen
        - Src:             'spnego_mech.c:3607,18'
          Dst:             make_spnego_token
    - functionName:    spnego_gss_display_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1798
      functionLinenumberEnd: 1835
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          129
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - dgettext
        - error_message
        - gss_display_status
        - krb5int_getspecific
        - krb5int_setspecific
        - make_err_msg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1807,10'
          Dst:             dgettext
        - Src:             'spnego_mech.c:1808,21'
          Dst:             make_err_msg
        - Src:             'spnego_mech.c:1815,6'
          Dst:             krb5int_getspecific
        - Src:             'spnego_mech.c:1817,21'
          Dst:             error_message
        - Src:             'spnego_mech.c:1818,20'
          Dst:             make_err_msg
        - Src:             'spnego_mech.c:1822,8'
          Dst:             krb5int_setspecific
        - Src:             'spnego_mech.c:1828,8'
          Dst:             gss_display_status
        - Src:             'spnego_mech.c:1832,8'
          Dst:             krb5int_setspecific
    - functionName:    acc_ctx_call_acc
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1542
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          212
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - acc_ctx_vfy_oid
        - gss_accept_sec_context
        - gss_oid_equal
        - gss_release_cred
        - gss_release_name
        - gssint_get_mech_type
        - negoex_accept
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1480,15'
          Dst:             gss_oid_equal
        - Src:             'spnego_mech.c:1486,9'
          Dst:             gssint_get_mech_type
        - Src:             'spnego_mech.c:1491,9'
          Dst:             acc_ctx_vfy_oid
        - Src:             'spnego_mech.c:1499,9'
          Dst:             negoex_accept
        - Src:             'spnego_mech.c:1502,10'
          Dst:             gss_release_name
        - Src:             'spnego_mech.c:1503,10'
          Dst:             gss_release_cred
        - Src:             'spnego_mech.c:1504,9'
          Dst:             gss_accept_sec_context
    - functionName:    acc_ctx_cont
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1368
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          157
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - generic_gss_release_oid
        - get_negTokenResp
        - k5_input_init
        - verify_token_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1380,2'
          Dst:             k5_input_init
        - Src:             'spnego_mech.c:1384,9'
          Dst:             verify_token_header
        - Src:             'spnego_mech.c:1391,8'
          Dst:             get_negTokenResp
        - Src:             'spnego_mech.c:1411,3'
          Dst:             generic_gss_release_oid
    - functionName:    acc_ctx_new
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1357
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          162
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - create_spnego_ctx
        - get_negTokenInit
        - get_negotiable_mechs
        - gss_release_buffer
        - gss_release_oid_set
        - negotiate_mech
        - release_spnego_ctx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1307,8'
          Dst:             get_negTokenInit
        - Src:             'spnego_mech.c:1314,7'
          Dst:             create_spnego_ctx
        - Src:             'spnego_mech.c:1321,8'
          Dst:             get_negotiable_mechs
        - Src:             'spnego_mech.c:1331,16'
          Dst:             negotiate_mech
        - Src:             'spnego_mech.c:1352,2'
          Dst:             release_spnego_ctx
        - Src:             'spnego_mech.c:1353,2'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:1355,3'
          Dst:             gss_release_buffer
    - functionName:    acc_ctx_hints
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1273
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          106
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - create_spnego_ctx
        - get_negotiable_mechs
        - make_NegHints
        - put_mech_set
        - release_spnego_ctx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1243,8'
          Dst:             make_NegHints
        - Src:             'spnego_mech.c:1247,7'
          Dst:             create_spnego_ctx
        - Src:             'spnego_mech.c:1253,8'
          Dst:             get_negotiable_mechs
        - Src:             'spnego_mech.c:1257,6'
          Dst:             put_mech_set
        - Src:             'spnego_mech.c:1271,2'
          Dst:             release_spnego_ctx
    - functionName:    spnego_gss_accept_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1558
      functionLinenumberEnd: 1742
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         136
      ICount:          683
      EdgeCount:       183
      CyclomaticComplexity: 49
      functionsReached:
        - __assert_fail
        - acc_ctx_call_acc
        - acc_ctx_cont
        - acc_ctx_hints
        - acc_ctx_new
        - gss_context_time
        - gss_delete_sec_context
        - gss_release_buffer
        - handle_mic
        - make_spnego_tokenInit_msg
        - make_spnego_tokenTarg_msg
        - release_spnego_ctx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1622,9'
          Dst:             acc_ctx_hints
        - Src:             'spnego_mech.c:1632,4'
          Dst:             release_spnego_ctx
        - Src:             'spnego_mech.c:1637,9'
          Dst:             acc_ctx_new
        - Src:             'spnego_mech.c:1647,9'
          Dst:             acc_ctx_cont
        - Src:             'spnego_mech.c:1664,9'
          Dst:             acc_ctx_call_acc
        - Src:             'spnego_mech.c:1674,9'
          Dst:             handle_mic
        - Src:             'spnego_mech.c:1685,3'
          Dst:             __assert_fail
        - Src:             'spnego_mech.c:1686,12'
          Dst:             make_spnego_tokenInit_msg
        - Src:             'spnego_mech.c:1693,12'
          Dst:             make_spnego_tokenTarg_msg
        - Src:             'spnego_mech.c:1713,11'
          Dst:             gss_context_time
        - Src:             'spnego_mech.c:1722,4'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:1724,4'
          Dst:             release_spnego_ctx
        - Src:             'spnego_mech.c:1728,2'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1730,3'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1734,3'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1738,3'
          Dst:             gss_release_buffer
    - functionName:    handle_mic
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          222
      EdgeCount:       55
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - process_mic
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:565,8'
          Dst:             process_mic
        - Src:             'spnego_mech.c:571,3'
          Dst:             __assert_fail
        - Src:             'spnego_mech.c:581,4'
          Dst:             __assert_fail
    - functionName:    make_spnego_tokenInit_msg
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3624
      functionLinenumberEnd: 3696
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          224
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - gssalloc_malloc
        - k5_buf_init_fixed
        - k5_der_add_taglen
        - k5_der_add_value
        - k5_der_value_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3640,16'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3643,11'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3644,17'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3648,11'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3649,17'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3653,12'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3654,15'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3657,13'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3658,15'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3661,6'
          Dst:             gssalloc_malloc
        - Src:             'spnego_mech.c:3664,2'
          Dst:             k5_buf_init_fixed
        - Src:             'spnego_mech.c:3667,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3668,2'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3672,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3673,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3676,2'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3680,3'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3681,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3687,3'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3688,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3691,2'
          Dst:             __assert_fail
    - functionName:    make_spnego_tokenTarg_msg
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3708
      functionLinenumberEnd: 3785
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          275
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - gssalloc_malloc
        - k5_buf_init_fixed
        - k5_der_add_taglen
        - k5_der_add_value
        - k5_der_value_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:3724,10'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3725,16'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3728,11'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3729,17'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3733,11'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3734,17'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3738,11'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3739,17'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3743,12'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3744,15'
          Dst:             k5_der_value_len
        - Src:             'spnego_mech.c:3747,6'
          Dst:             gssalloc_malloc
        - Src:             'spnego_mech.c:3750,2'
          Dst:             k5_buf_init_fixed
        - Src:             'spnego_mech.c:3753,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3754,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3757,2'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3758,2'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3762,3'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3763,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3769,3'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3770,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3776,3'
          Dst:             k5_der_add_taglen
        - Src:             'spnego_mech.c:3777,3'
          Dst:             k5_der_add_value
        - Src:             'spnego_mech.c:3780,2'
          Dst:             __assert_fail
    - functionName:    mech_requires_mechlistMIC
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gss_inquire_sec_context_by_oid
        - gss_release_buffer_set
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:481,10'
          Dst:             gss_inquire_sec_context_by_oid
        - Src:             'spnego_mech.c:489,5'
          Dst:             memcmp
        - Src:             'spnego_mech.c:490,9'
          Dst:             gss_release_buffer_set
    - functionName:    init_ctx_call_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          335
      EdgeCount:       64
      CyclomaticComplexity: 19
      functionsReached:
        - gss_delete_sec_context
        - gss_init_sec_context
        - gss_oid_equal
        - gss_release_buffer
        - gssalloc_free
        - init_ctx_call_init
        - negoex_init
        - put_mech_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:902,6'
          Dst:             gss_oid_equal
        - Src:             'spnego_mech.c:903,9'
          Dst:             negoex_init
        - Src:             'spnego_mech.c:907,9'
          Dst:             gss_init_sec_context
        - Src:             'spnego_mech.c:953,2'
          Dst:             gssalloc_free
        - Src:             'spnego_mech.c:958,2'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:959,6'
          Dst:             put_mech_set
        - Src:             'spnego_mech.c:961,2'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:962,11'
          Dst:             init_ctx_call_init
    - functionName:    init_ctx_cont
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          223
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - generic_gss_release_oid
        - get_negTokenResp
        - gssint_mecherrmap_map_errcode
        - init_ctx_nego
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:707,2'
          Dst:             k5_input_init
        - Src:             'spnego_mech.c:708,8'
          Dst:             get_negTokenResp
        - Src:             'spnego_mech.c:720,4'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'spnego_mech.c:732,9'
          Dst:             init_ctx_nego
        - Src:             'spnego_mech.c:753,3'
          Dst:             generic_gss_release_oid
    - functionName:    init_ctx_new
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - create_spnego_ctx
        - get_negotiable_mechs
        - put_mech_set
        - release_spnego_ctx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:662,7'
          Dst:             create_spnego_ctx
        - Src:             'spnego_mech.c:667,8'
          Dst:             get_negotiable_mechs
        - Src:             'spnego_mech.c:674,6'
          Dst:             put_mech_set
        - Src:             'spnego_mech.c:686,2'
          Dst:             release_spnego_ctx
    - functionName:    spnego_gss_init_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 993
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          508
      EdgeCount:       129
      CyclomaticComplexity: 35
      functionsReached:
        - gss_context_time
        - gss_delete_sec_context
        - gss_release_buffer
        - handle_mic
        - init_ctx_call_init
        - init_ctx_cont
        - init_ctx_new
        - make_spnego_tokenInit_msg
        - make_spnego_tokenTarg_msg
        - mech_requires_mechlistMIC
        - release_spnego_ctx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:1048,9'
          Dst:             init_ctx_new
        - Src:             'spnego_mech.c:1055,9'
          Dst:             init_ctx_cont
        - Src:             'spnego_mech.c:1065,9'
          Dst:             init_ctx_call_init
        - Src:             'spnego_mech.c:1073,7'
          Dst:             mech_requires_mechlistMIC
        - Src:             'spnego_mech.c:1083,9'
          Dst:             handle_mic
        - Src:             'spnego_mech.c:1100,7'
          Dst:             make_spnego_tokenInit_msg
        - Src:             'spnego_mech.c:1111,7'
          Dst:             make_spnego_tokenTarg_msg
        - Src:             'spnego_mech.c:1118,2'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1125,11'
          Dst:             gss_context_time
        - Src:             'spnego_mech.c:1131,4'
          Dst:             gss_delete_sec_context
        - Src:             'spnego_mech.c:1134,4'
          Dst:             release_spnego_ctx
        - Src:             'spnego_mech.c:1139,3'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1143,3'
          Dst:             gss_release_buffer
        - Src:             'spnego_mech.c:1147,3'
          Dst:             gss_release_buffer
    - functionName:    spnego_gss_release_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - gss_release_cred
        - gss_release_oid_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:417,2'
          Dst:             gss_release_oid_set
        - Src:             'spnego_mech.c:418,2'
          Dst:             gss_release_cred
    - functionName:    spnego_gss_acquire_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          133
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - create_spnego_cred
        - generic_gss_copy_oid_set
        - get_available_mechs
        - gss_release_oid_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:369,11'
          Dst:             create_spnego_cred
        - Src:             'spnego_mech.c:377,11'
          Dst:             get_available_mechs
        - Src:             'spnego_mech.c:382,10'
          Dst:             generic_gss_copy_oid_set
        - Src:             'spnego_mech.c:384,9'
          Dst:             gss_release_oid_set
    - functionName:    spnego_gss_acquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - spnego_gss_acquire_cred_from
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:337,12'
          Dst:             spnego_gss_acquire_cred_from
    - functionName:    gss_spnegoint_lib_fini
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_key_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:306,2'
          Dst:             krb5int_key_delete
    - functionName:    gss_spnegomechglue_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_register_mechinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:275,9'
          Dst:             gssint_register_mechinfo
    - functionName:    gss_spnegoint_lib_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/spnego_mech.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gss_spnegomechglue_init
        - krb5int_key_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'spnego_mech.c:293,8'
          Dst:             krb5int_key_register
        - Src:             'spnego_mech.c:298,9'
          Dst:             gss_spnegomechglue_init
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_checksum
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          125
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - krb5_c_make_checksum
        - krb5_free_checksum_contents
        - make_data
        - negoex_add_verify_message
        - verify_keyusage
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:487,27'
          Dst:             verify_keyusage
        - Src:             'negoex_ctx.c:491,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:502,9'
          Dst:             make_data
        - Src:             'negoex_ctx.c:503,11'
          Dst:             krb5_c_make_checksum
        - Src:             'negoex_ctx.c:509,5'
          Dst:             negoex_add_verify_message
        - Src:             'negoex_ctx.c:513,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    verify_keyusage
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emit_acceptor_nego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - negoex_add_nego_message
        - negoex_random
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:164,13'
          Dst:             negoex_random
        - Src:             'negoex_ctx.c:168,5'
          Dst:             negoex_add_nego_message
    - functionName:    emit_initiator_nego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - negoex_add_nego_message
        - negoex_random
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:132,13'
          Dst:             negoex_random
        - Src:             'negoex_ctx.c:136,5'
          Dst:             negoex_add_nego_message
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    zero_and_release_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - explicit_bzero
        - gss_release_buffer_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:63,13'
          Dst:             explicit_bzero
        - Src:             'negoex_ctx.c:65,9'
          Dst:             gss_release_buffer_set
    - functionName:    buffer_set_to_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          103
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5memdup
        - krb5_free_keyblock_contents
        - load_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:84,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'negoex_ctx.c:86,21'
          Dst:             k5memdup
        - Src:             'negoex_ctx.c:93,20'
          Dst:             load_32_le
    - functionName:    get_session_keys
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - buffer_set_to_key
        - gss_inquire_sec_context_by_oid
        - zero_and_release_buffer_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:104,13'
          Dst:             gss_inquire_sec_context_by_oid
        - Src:             'negoex_ctx.c:107,17'
          Dst:             buffer_set_to_key
        - Src:             'negoex_ctx.c:108,9'
          Dst:             zero_and_release_buffer_set
        - Src:             'negoex_ctx.c:113,13'
          Dst:             gss_inquire_sec_context_by_oid
        - Src:             'negoex_ctx.c:117,17'
          Dst:             buffer_set_to_key
        - Src:             'negoex_ctx.c:118,9'
          Dst:             zero_and_release_buffer_set
    - functionName:    mech_accept
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          264
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - __assert_fail
        - get_session_keys
        - gss_accept_sec_context
        - gss_delete_sec_context
        - gss_release_buffer
        - gss_release_cred
        - gss_release_name
        - memcmp
        - negoex_locate_auth_scheme
        - negoex_locate_exchange_message
        - negoex_select_auth_mech
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:361,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:363,11'
          Dst:             negoex_locate_exchange_message
        - Src:             'negoex_ctx.c:378,14'
          Dst:             memcmp
        - Src:             'negoex_ctx.c:382,16'
          Dst:             negoex_locate_auth_scheme
        - Src:             'negoex_ctx.c:387,9'
          Dst:             negoex_select_auth_mech
        - Src:             'negoex_ctx.c:394,9'
          Dst:             gss_release_name
        - Src:             'negoex_ctx.c:396,9'
          Dst:             gss_release_cred
        - Src:             'negoex_ctx.c:398,13'
          Dst:             gss_accept_sec_context
        - Src:             'negoex_ctx.c:408,17'
          Dst:             get_session_keys
        - Src:             'negoex_ctx.c:413,9'
          Dst:             gss_release_buffer
        - Src:             'negoex_ctx.c:414,9'
          Dst:             gss_delete_sec_context
    - functionName:    process_initiator_nego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - negoex_locate_nego_message
        - negoex_restrict_auth_schemes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:146,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:148,11'
          Dst:             negoex_locate_nego_message
        - Src:             'negoex_ctx.c:154,5'
          Dst:             negoex_restrict_auth_schemes
    - functionName:    negoex_accept
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          253
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - exchange_meta_data
        - gss_release_buffer
        - k5_buf_add_len
        - make_output_token
        - mech_accept
        - negoex_parse_token
        - negoex_prep_context_for_negoex
        - negoex_prep_context_for_spnego
        - process_alerts
        - process_initiator_nego
        - query_meta_data
        - verify_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:721,13'
          Dst:             negoex_prep_context_for_negoex
        - Src:             'negoex_ctx.c:727,13'
          Dst:             negoex_parse_token
        - Src:             'negoex_ctx.c:731,5'
          Dst:             process_alerts
        - Src:             'negoex_ctx.c:735,17'
          Dst:             process_initiator_nego
        - Src:             'negoex_ctx.c:744,9'
          Dst:             exchange_meta_data
        - Src:             'negoex_ctx.c:745,9'
          Dst:             query_meta_data
        - Src:             'negoex_ctx.c:759,13'
          Dst:             mech_accept
        - Src:             'negoex_ctx.c:765,17'
          Dst:             verify_checksum
        - Src:             'negoex_ctx.c:771,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_ctx.c:774,13'
          Dst:             make_output_token
        - Src:             'negoex_ctx.c:785,5'
          Dst:             gss_release_buffer
        - Src:             'negoex_ctx.c:786,5'
          Dst:             negoex_prep_context_for_spnego
    - functionName:    process_alerts
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_keyblock_contents
        - negoex_locate_alert_message
        - negoex_locate_auth_scheme
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:526,11'
          Dst:             negoex_locate_alert_message
        - Src:             'negoex_ctx.c:528,16'
          Dst:             negoex_locate_auth_scheme
        - Src:             'negoex_ctx.c:531,13'
          Dst:             krb5_free_keyblock_contents
        - Src:             'negoex_ctx.c:532,13'
          Dst:             krb5_free_keyblock_contents
    - functionName:    exchange_meta_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          113
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - gssspi_exchange_meta_data
        - negoex_delete_auth_mech
        - negoex_locate_auth_scheme
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:225,16'
          Dst:             negoex_locate_auth_scheme
        - Src:             'negoex_ctx.c:229,17'
          Dst:             gssspi_exchange_meta_data
        - Src:             'negoex_ctx.c:234,13'
          Dst:             negoex_delete_auth_mech
    - functionName:    query_meta_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - gssspi_query_meta_data
        - negoex_delete_auth_mech
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:199,17'
          Dst:             gssspi_query_meta_data
        - Src:             'negoex_ctx.c:203,13'
          Dst:             negoex_delete_auth_mech
    - functionName:    verify_checksum
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          220
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - krb5_c_is_keyed_cksum
        - krb5_c_verify_checksum_iov
        - make_data
        - memcmp
        - negoex_locate_verify_message
        - verify_keyusage
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:437,27'
          Dst:             verify_keyusage
        - Src:             'negoex_ctx.c:441,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:445,11'
          Dst:             negoex_locate_verify_message
        - Src:             'negoex_ctx.c:446,25'
          Dst:             memcmp
        - Src:             'negoex_ctx.c:458,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:460,19'
          Dst:             make_data
        - Src:             'negoex_ctx.c:463,19'
          Dst:             make_data
        - Src:             'negoex_ctx.c:465,19'
          Dst:             make_data
        - Src:             'negoex_ctx.c:467,11'
          Dst:             krb5_c_verify_checksum_iov
        - Src:             'negoex_ctx.c:473,20'
          Dst:             krb5_c_is_keyed_cksum
    - functionName:    make_output_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          300
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - emit_acceptor_nego
        - emit_initiator_nego
        - gssalloc_malloc
        - make_checksum
        - negoex_add_exchange_message
        - negoex_add_verify_no_key_alert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:558,21'
          Dst:             emit_initiator_nego
        - Src:             'negoex_ctx.c:560,21'
          Dst:             emit_acceptor_nego
        - Src:             'negoex_ctx.c:567,17'
          Dst:             negoex_add_exchange_message
        - Src:             'negoex_ctx.c:577,9'
          Dst:             negoex_add_exchange_message
        - Src:             'negoex_ctx.c:582,9'
          Dst:             negoex_add_verify_no_key_alert
        - Src:             'negoex_ctx.c:586,17'
          Dst:             make_checksum
        - Src:             'negoex_ctx.c:598,27'
          Dst:             gssalloc_malloc
    - functionName:    mech_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          242
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - get_session_keys
        - gss_init_sec_context
        - memcmp
        - negoex_delete_auth_mech
        - negoex_locate_exchange_message
        - secure_getenv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:293,9'
          Dst:             secure_getenv
        - Src:             'negoex_ctx.c:307,11'
          Dst:             negoex_locate_exchange_message
        - Src:             'negoex_ctx.c:308,24'
          Dst:             memcmp
        - Src:             'negoex_ctx.c:319,17'
          Dst:             gss_init_sec_context
        - Src:             'negoex_ctx.c:328,20'
          Dst:             get_session_keys
        - Src:             'negoex_ctx.c:337,9'
          Dst:             negoex_delete_auth_mech
    - functionName:    process_acceptor_nego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - negoex_common_auth_schemes
        - negoex_locate_nego_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:178,11'
          Dst:             negoex_locate_nego_message
        - Src:             'negoex_ctx.c:186,5'
          Dst:             negoex_common_auth_schemes
    - functionName:    check_optimistic_result
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          105
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - gss_delete_sec_context
        - krb5_free_keyblock_contents
        - negoex_locate_exchange_message
        - negoex_locate_verify_message
        - negoex_select_auth_mech
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:250,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:259,9'
          Dst:             negoex_locate_exchange_message
        - Src:             'negoex_ctx.c:261,9'
          Dst:             negoex_locate_verify_message
        - Src:             'negoex_ctx.c:264,9'
          Dst:             negoex_select_auth_mech
        - Src:             'negoex_ctx.c:267,15'
          Dst:             gss_delete_sec_context
        - Src:             'negoex_ctx.c:268,9'
          Dst:             krb5_free_keyblock_contents
        - Src:             'negoex_ctx.c:269,9'
          Dst:             krb5_free_keyblock_contents
    - functionName:    negoex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          340
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - __assert_fail
        - check_optimistic_result
        - exchange_meta_data
        - gss_release_buffer
        - k5_buf_add_len
        - make_output_token
        - mech_init
        - negoex_parse_token
        - negoex_prep_context_for_negoex
        - negoex_prep_context_for_spnego
        - negoex_random
        - negoex_select_auth_mech
        - process_acceptor_nego
        - process_alerts
        - query_meta_data
        - verify_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_ctx.c:627,13'
          Dst:             negoex_prep_context_for_negoex
        - Src:             'negoex_ctx.c:634,17'
          Dst:             negoex_parse_token
        - Src:             'negoex_ctx.c:640,5'
          Dst:             process_alerts
        - Src:             'negoex_ctx.c:644,17'
          Dst:             negoex_random
        - Src:             'negoex_ctx.c:649,9'
          Dst:             query_meta_data
        - Src:             'negoex_ctx.c:652,9'
          Dst:             check_optimistic_result
        - Src:             'negoex_ctx.c:655,9'
          Dst:             exchange_meta_data
        - Src:             'negoex_ctx.c:659,17'
          Dst:             process_acceptor_nego
        - Src:             'negoex_ctx.c:666,13'
          Dst:             mech_init
        - Src:             'negoex_ctx.c:671,5'
          Dst:             __assert_fail
        - Src:             'negoex_ctx.c:676,9'
          Dst:             negoex_select_auth_mech
        - Src:             'negoex_ctx.c:678,13'
          Dst:             verify_checksum
        - Src:             'negoex_ctx.c:684,9'
          Dst:             k5_buf_add_len
        - Src:             'negoex_ctx.c:688,13'
          Dst:             make_output_token
        - Src:             'negoex_ctx.c:699,5'
          Dst:             gss_release_buffer
        - Src:             'negoex_ctx.c:700,5'
          Dst:             negoex_prep_context_for_spnego
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_64_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    guid_to_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_guid
        - k5_buf_cstring
        - k5_buf_init_dynamic
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:158,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'negoex_util.c:159,5'
          Dst:             add_guid
        - Src:             'negoex_util.c:160,12'
          Dst:             k5_buf_cstring
    - functionName:    add_guid
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_fmt
        - load_16_le
        - load_32_le
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:145,22'
          Dst:             load_32_le
        - Src:             'negoex_util.c:146,22'
          Dst:             load_16_le
        - Src:             'negoex_util.c:146,52'
          Dst:             load_16_le
        - Src:             'negoex_util.c:148,5'
          Dst:             k5_buf_add_fmt
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vector_base
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:97,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:98,32'
          Dst:             load_16_le
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_64_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    trace_received_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         40
      ICount:          225
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - add_guid
        - guid_to_string
        - k5_buf_add
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - krb5int_trace
        - typestr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:185,9'
          Dst:             k5_buf_init_dynamic
        - Src:             'negoex_util.c:187,13'
          Dst:             add_guid
        - Src:             'negoex_util.c:189,17'
          Dst:             k5_buf_add
        - Src:             'negoex_util.c:191,16'
          Dst:             k5_buf_cstring
        - Src:             'negoex_util.c:195,16'
          Dst:             guid_to_string
        - Src:             'negoex_util.c:197,16'
          Dst:             guid_to_string
        - Src:             'negoex_util.c:199,16'
          Dst:             guid_to_string
        - Src:             'negoex_util.c:205,5'
          Dst:             typestr
        - Src:             'negoex_util.c:205,5'
          Dst:             krb5int_trace
    - functionName:    typestr
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          85
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_alert_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          167
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - k5_input_get_bytes
        - k5_input_get_uint32_le
        - k5_input_init
        - vector_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:344,9'
          Dst:             k5_input_get_bytes
        - Src:             'negoex_util.c:347,11'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:348,21'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:349,15'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:350,9'
          Dst:             vector_base
        - Src:             'negoex_util.c:358,5'
          Dst:             k5_input_init
        - Src:             'negoex_util.c:360,17'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:361,24'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:362,21'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:363,13'
          Dst:             vector_base
        - Src:             'negoex_util.c:370,13'
          Dst:             k5_input_init
        - Src:             'negoex_util.c:371,19'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:372,22'
          Dst:             k5_input_get_uint32_le
    - functionName:    k5_input_get_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_le
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:118,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:119,32'
          Dst:             load_32_le
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_verify_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          123
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_input_get_bytes
        - k5_input_get_uint32_le
        - vector_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:305,9'
          Dst:             k5_input_get_bytes
        - Src:             'negoex_util.c:309,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:314,20'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:319,23'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:321,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:322,11'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:323,18'
          Dst:             vector_base
    - functionName:    parse_exchange_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_get_bytes
        - k5_input_get_uint32_le
        - vector_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:279,9'
          Dst:             k5_input_get_bytes
        - Src:             'negoex_util.c:283,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:284,11'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:285,9'
          Dst:             vector_base
    - functionName:    parse_nego_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          157
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - k5_input_get_bytes
        - k5_input_get_uint16_le
        - k5_input_get_uint32_le
        - k5_input_get_uint64_le
        - load_32_le
        - vector_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:235,9'
          Dst:             k5_input_get_bytes
        - Src:             'negoex_util.c:238,24'
          Dst:             k5_input_get_uint64_le
        - Src:             'negoex_util.c:244,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:245,13'
          Dst:             k5_input_get_uint16_le
        - Src:             'negoex_util.c:246,20'
          Dst:             vector_base
        - Src:             'negoex_util.c:253,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:254,13'
          Dst:             k5_input_get_uint16_le
        - Src:             'negoex_util.c:255,9'
          Dst:             vector_base
        - Src:             'negoex_util.c:261,26'
          Dst:             load_32_le
    - functionName:    k5_input_get_uint64_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_64_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:139,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:140,32'
          Dst:             load_64_le
    - functionName:    negoex_restrict_auth_schemes
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          124
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - negoex_delete_auth_mech
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:811,17'
          Dst:             memcmp
        - Src:             'negoex_util.c:816,13'
          Dst:             negoex_delete_auth_mech
    - functionName:    negoex_delete_auth_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - release_auth_mech
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:719,5'
          Dst:             release_auth_mech
    - functionName:    release_auth_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generic_gss_release_oid
        - gss_delete_sec_context
        - gss_release_buffer
        - krb5_free_keyblock_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:705,5'
          Dst:             gss_delete_sec_context
        - Src:             'negoex_util.c:706,5'
          Dst:             generic_gss_release_oid
        - Src:             'negoex_util.c:707,5'
          Dst:             gss_release_buffer
        - Src:             'negoex_util.c:708,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'negoex_util.c:709,5'
          Dst:             krb5_free_keyblock_contents
    - functionName:    negoex_common_auth_schemes
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          173
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - negoex_locate_auth_scheme
        - release_all_mechs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:786,16'
          Dst:             negoex_locate_auth_scheme
        - Src:             'negoex_util.c:794,5'
          Dst:             release_all_mechs
    - functionName:    negoex_locate_auth_scheme
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:766,13'
          Dst:             memcmp
    - functionName:    release_all_mechs
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - release_auth_mech
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:106,9'
          Dst:             release_auth_mech
    - functionName:    negoex_add_auth_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - generic_gss_copy_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:740,12'
          Dst:             calloc
        - Src:             'negoex_util.c:746,13'
          Dst:             generic_gss_copy_oid
    - functionName:    negoex_select_auth_mech
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 726
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          122
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - release_all_mechs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:727,5'
          Dst:             __assert_fail
        - Src:             'negoex_util.c:729,5'
          Dst:             release_all_mechs
    - functionName:    negoex_add_verify_no_key_alert
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_buf_add_uint16_le
        - k5_buf_add_uint32_le
        - put_message_header
        - trace_outgoing_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:675,5'
          Dst:             put_message_header
        - Src:             'negoex_util.c:677,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:679,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:681,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:682,5'
          Dst:             k5_buf_add_uint16_le
        - Src:             'negoex_util.c:684,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:686,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:687,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:689,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:691,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:692,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:694,5'
          Dst:             trace_outgoing_message
    - functionName:    put_message_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 583
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          136
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - k5_buf_add_len
        - k5_buf_add_uint32_le
        - k5_buf_add_uint64_le
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:573,9'
          Dst:             abort
        - Src:             'negoex_util.c:575,5'
          Dst:             k5_buf_add_uint64_le
        - Src:             'negoex_util.c:576,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:577,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:578,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:579,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:580,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_buf_add_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_le
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:153,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:156,9'
          Dst:             store_32_le
    - functionName:    k5_buf_add_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_le
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:135,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:138,9'
          Dst:             store_16_le
    - functionName:    trace_outgoing_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - guid_to_string
        - krb5int_trace
        - typestr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:216,18'
          Dst:             guid_to_string
        - Src:             'negoex_util.c:220,5'
          Dst:             typestr
        - Src:             'negoex_util.c:220,5'
          Dst:             krb5int_trace
    - functionName:    k5_buf_add_uint64_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_64_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:171,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:174,9'
          Dst:             store_64_le
    - functionName:    negoex_add_verify_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_buf_add_uint32_le
        - put_message_header
        - trace_outgoing_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:651,5'
          Dst:             put_message_header
        - Src:             'negoex_util.c:652,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:653,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:654,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:655,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:657,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:658,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:660,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:662,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:664,5'
          Dst:             trace_outgoing_message
    - functionName:    negoex_add_exchange_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_buf_add_uint32_le
        - put_message_header
        - trace_outgoing_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:633,5'
          Dst:             put_message_header
        - Src:             'negoex_util.c:634,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:636,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:637,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:639,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:641,5'
          Dst:             trace_outgoing_message
    - functionName:    negoex_add_nego_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          154
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - add_guid
        - k5_buf_add
        - k5_buf_add_len
        - k5_buf_add_uint16_le
        - k5_buf_add_uint32_le
        - k5_buf_add_uint64_le
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5_buf_truncate
        - krb5int_trace
        - put_message_header
        - typestr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:598,5'
          Dst:             put_message_header
        - Src:             'negoex_util.c:599,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:601,5'
          Dst:             k5_buf_add_uint64_le
        - Src:             'negoex_util.c:603,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:604,5'
          Dst:             k5_buf_add_uint16_le
        - Src:             'negoex_util.c:606,5'
          Dst:             k5_buf_add_uint32_le
        - Src:             'negoex_util.c:607,5'
          Dst:             k5_buf_add_uint16_le
        - Src:             'negoex_util.c:609,5'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:612,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'negoex_util.c:614,9'
          Dst:             k5_buf_add_len
        - Src:             'negoex_util.c:615,9'
          Dst:             add_guid
        - Src:             'negoex_util.c:616,9'
          Dst:             k5_buf_add
        - Src:             'negoex_util.c:620,9'
          Dst:             k5_buf_truncate
        - Src:             'negoex_util.c:621,9'
          Dst:             typestr
        - Src:             'negoex_util.c:621,9'
          Dst:             k5_buf_cstring
        - Src:             'negoex_util.c:621,9'
          Dst:             krb5int_trace
        - Src:             'negoex_util.c:623,9'
          Dst:             k5_buf_free
    - functionName:    negoex_locate_alert_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - locate_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:546,34'
          Dst:             locate_message
    - functionName:    locate_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    negoex_locate_verify_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - locate_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:538,34'
          Dst:             locate_message
    - functionName:    negoex_locate_exchange_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - locate_message
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:529,34'
          Dst:             locate_message
    - functionName:    negoex_locate_nego_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - locate_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:520,34'
          Dst:             locate_message
    - functionName:    parse_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          335
      EdgeCount:       67
      CyclomaticComplexity: 20
      functionsReached:
        - k5_input_get_bytes
        - k5_input_get_uint32_le
        - k5_input_get_uint64_le
        - k5_input_init
        - memcmp
        - parse_alert_message
        - parse_exchange_message
        - parse_nego_message
        - parse_verify_message
        - trace_received_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:391,17'
          Dst:             k5_input_get_uint64_le
        - Src:             'negoex_util.c:392,12'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:393,14'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:394,18'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:395,15'
          Dst:             k5_input_get_uint32_le
        - Src:             'negoex_util.c:396,15'
          Dst:             k5_input_get_bytes
        - Src:             'negoex_util.c:413,17'
          Dst:             memcmp
        - Src:             'negoex_util.c:423,17'
          Dst:             parse_nego_message
        - Src:             'negoex_util.c:426,17'
          Dst:             parse_exchange_message
        - Src:             'negoex_util.c:429,17'
          Dst:             parse_verify_message
        - Src:             'negoex_util.c:432,17'
          Dst:             parse_alert_message
        - Src:             'negoex_util.c:442,9'
          Dst:             k5_input_init
        - Src:             'negoex_util.c:445,5'
          Dst:             trace_received_message
    - functionName:    negoex_parse_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          158
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - k5_input_init
        - parse_message
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:469,5'
          Dst:             __assert_fail
        - Src:             'negoex_util.c:470,5'
          Dst:             k5_input_init
        - Src:             'negoex_util.c:473,18'
          Dst:             realloc
        - Src:             'negoex_util.c:481,17'
          Dst:             parse_message
    - functionName:    negoex_release_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_free
        - krb5_free_context
        - release_all_mechs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:113,5'
          Dst:             k5_buf_free
        - Src:             'negoex_util.c:114,5'
          Dst:             release_all_mechs
        - Src:             'negoex_util.c:115,5'
          Dst:             krb5_free_context
    - functionName:    negoex_prep_context_for_negoex
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - k5_buf_init_dynamic
        - krb5_init_context
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:80,13'
          Dst:             __assert_fail
        - Src:             'negoex_util.c:89,11'
          Dst:             krb5_init_context
        - Src:             'negoex_util.c:95,5'
          Dst:             k5_buf_init_dynamic
    - functionName:    negoex_prep_context_for_spnego
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:64,5'
          Dst:             __assert_fail
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    negoex_random
      functionSourceFile: '/src/krb5/src/lib/gssapi/spnego/negoex_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_random_make_octets
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'negoex_util.c:43,19'
          Dst:             make_data
        - Src:             'negoex_util.c:45,14'
          Dst:             krb5_c_random_make_octets
    - functionName:    generic_gss_display_mech_attr
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/gssapi_generic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          234
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - gssint_g_make_string_buffer
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_generic.c:460,13'
          Dst:             memcmp
        - Src:             'gssapi_generic.c:462,18'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_generic.c:467,18'
          Dst:             gssint_g_make_string_buffer
        - Src:             'gssapi_generic.c:472,18'
          Dst:             gssint_g_make_string_buffer
    - functionName:    gssalloc_calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:108,12'
          Dst:             calloc
    - functionName:    generic_gss_copy_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          185
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - generic_gss_release_oid_set
        - gssalloc_calloc
        - gssalloc_malloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:519,38'
          Dst:             gssalloc_calloc
        - Src:             'oid_ops.c:525,10'
          Dst:             gssalloc_calloc
        - Src:             'oid_ops.c:535,39'
          Dst:             gssalloc_malloc
        - Src:             'oid_ops.c:546,16'
          Dst:             generic_gss_release_oid_set
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_oid_decompose
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          130
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:476,9'
          Dst:             memcmp
    - functionName:    generic_gss_oid_compose
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          153
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    arc_encode
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          58
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - arc_encoded_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:304,25'
          Dst:             arc_encoded_length
    - functionName:    arc_encoded_length
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          31
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_arc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          166
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:319,22'
          Dst:             __ctype_b_loc
        - Src:             'oid_ops.c:321,23'
          Dst:             __ctype_b_loc
        - Src:             'oid_ops.c:327,24'
          Dst:             __ctype_b_loc
    - functionName:    generic_gss_str_to_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          375
      EdgeCount:       93
      CyclomaticComplexity: 26
      functionsReached:
        - __assert_fail
        - __ctype_b_loc
        - arc_encode
        - arc_encoded_length
        - get_arc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:369,23'
          Dst:             __ctype_b_loc
        - Src:             'oid_ops.c:375,23'
          Dst:             __ctype_b_loc
        - Src:             'oid_ops.c:379,10'
          Dst:             get_arc
        - Src:             'oid_ops.c:379,38'
          Dst:             get_arc
        - Src:             'oid_ops.c:386,14'
          Dst:             arc_encoded_length
        - Src:             'oid_ops.c:387,12'
          Dst:             get_arc
        - Src:             'oid_ops.c:388,19'
          Dst:             arc_encoded_length
        - Src:             'oid_ops.c:404,5'
          Dst:             arc_encode
        - Src:             'oid_ops.c:406,12'
          Dst:             get_arc
        - Src:             'oid_ops.c:407,9'
          Dst:             arc_encode
        - Src:             'oid_ops.c:408,5'
          Dst:             __assert_fail
    - functionName:    k5buf_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./gssapiP_generic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './gssapiP_generic.h:206,9'
          Dst:             k5_buf_status
    - functionName:    generic_gss_oid_to_str
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          189
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_init_dynamic
        - k5buf_to_gss
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:264,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'oid_ops.c:265,5'
          Dst:             k5_buf_add
        - Src:             'oid_ops.c:274,17'
          Dst:             k5_buf_add_fmt
        - Src:             'oid_ops.c:277,17'
          Dst:             k5_buf_add_fmt
        - Src:             'oid_ops.c:282,5'
          Dst:             k5_buf_add_len
        - Src:             'oid_ops.c:283,12'
          Dst:             k5buf_to_gss
    - functionName:    generic_gss_test_oid_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          123
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:225,14'
          Dst:             memcmp
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_add_oid_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssalloc_free
        - gssalloc_malloc
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:171,43'
          Dst:             gssalloc_malloc
        - Src:             'oid_ops.c:182,23'
          Dst:             gssalloc_malloc
        - Src:             'oid_ops.c:192,17'
          Dst:             gssalloc_free
        - Src:             'oid_ops.c:197,13'
          Dst:             gssalloc_free
    - functionName:    generic_gss_create_empty_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gssalloc_malloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'oid_ops.c:142,35'
          Dst:             gssalloc_malloc
    - functionName:    generic_gss_copy_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_release_oid
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/oid_ops.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          124
      EdgeCount:       36
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_release_oid_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/rel_oid_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - gssalloc_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_oid_set.c:53,9'
          Dst:             gssalloc_free
        - Src:             'rel_oid_set.c:55,5'
          Dst:             gssalloc_free
        - Src:             'rel_oid_set.c:56,5'
          Dst:             gssalloc_free
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_strdup
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssalloc_malloc
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:122,19'
          Dst:             strlen
        - Src:             '../../../include/gssapi/gssapi_alloc.h:123,18'
          Dst:             gssalloc_malloc
    - functionName:    gssint_g_make_string_buffer
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gssalloc_strdup
        - strlen
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'util_buffer.c:40,22'
          Dst:             strlen
        - Src:             'util_buffer.c:42,26'
          Dst:             gssalloc_strdup
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_release_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - generic_gss_release_buffer
        - gssalloc_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'util_buffer_set.c:112,9'
          Dst:             generic_gss_release_buffer
        - Src:             'util_buffer_set.c:116,9'
          Dst:             gssalloc_free
        - Src:             'util_buffer_set.c:122,5'
          Dst:             gssalloc_free
    - functionName:    gssalloc_realloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:114,12'
          Dst:             realloc
    - functionName:    generic_gss_add_buffer_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          130
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - generic_gss_create_empty_buffer_set
        - gssalloc_malloc
        - gssalloc_realloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'util_buffer_set.c:66,15'
          Dst:             generic_gss_create_empty_buffer_set
        - Src:             'util_buffer_set.c:74,40'
          Dst:             gssalloc_realloc
        - Src:             'util_buffer_set.c:84,16'
          Dst:             gssalloc_malloc
    - functionName:    generic_gss_create_empty_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssalloc_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'util_buffer_set.c:41,35'
          Dst:             gssalloc_malloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap__pairarray_max_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap__pairarray_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mecherrmap__pairarray_getaddr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:127,15'
          Dst:             mecherrmap__pairarray_getaddr
    - functionName:    mecherrmap__pairarray_getaddr
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:119,2'
          Dst:             abort
    - functionName:    mecherrmap__pairarray_grow
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - mecherrmap__pairarray_max_size
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:102,20'
          Dst:             mecherrmap__pairarray_max_size
        - Src:             './errmap.h:106,11'
          Dst:             realloc
    - functionName:    cmp_OM_uint32
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap__pairarray_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherror_cmp
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:70,12'
          Dst:             memcmp
    - functionName:    mecherrmap_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mecherrmap__pairarray_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:166,12'
          Dst:             mecherrmap__pairarray_size
    - functionName:    mecherrmap__pairarray_destroy
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap__pairarray_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:67,17'
          Dst:             calloc
    - functionName:    gssint_mecherrmap_get
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - mecherrmap_findleft
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:256,23'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'util_errmap.c:259,5'
          Dst:             k5_mutex_lock
        - Src:             'util_errmap.c:260,9'
          Dst:             mecherrmap_findleft
        - Src:             'util_errmap.c:261,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    mecherrmap_findleft
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cmp_OM_uint32
        - mecherrmap__pairarray_getaddr
        - mecherrmap_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:217,10'
          Dst:             mecherrmap_size
        - Src:             './errmap.h:220,9'
          Dst:             mecherrmap__pairarray_getaddr
        - Src:             './errmap.h:221,6'
          Dst:             cmp_OM_uint32
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    gssint_mecherrmap_map_errcode
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gssint_mecherrmap_map
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:248,12'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssint_mecherrmap_map
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          143
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gssint_mechglue_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - mecherrmap_add
        - mecherrmap_findleft
        - mecherrmap_findright
        - mecherror_copy
      functionUses:    80
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:185,9'
          Dst:             gssint_mechglue_initialize_library
        - Src:             'util_errmap.c:190,5'
          Dst:             k5_mutex_lock
        - Src:             'util_errmap.c:193,9'
          Dst:             mecherrmap_findright
        - Src:             'util_errmap.c:195,9'
          Dst:             k5_mutex_unlock
        - Src:             'util_errmap.c:206,11'
          Dst:             mecherrmap_findleft
        - Src:             'util_errmap.c:220,18'
          Dst:             mecherrmap_findleft
        - Src:             'util_errmap.c:222,11'
          Dst:             mecherror_copy
        - Src:             'util_errmap.c:224,9'
          Dst:             k5_mutex_unlock
        - Src:             'util_errmap.c:227,11'
          Dst:             mecherrmap_add
        - Src:             'util_errmap.c:228,5'
          Dst:             k5_mutex_unlock
    - functionName:    mecherrmap_findright
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - mecherrmap__pairarray_getaddr
        - mecherrmap_size
        - mecherror_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:231,10'
          Dst:             mecherrmap_size
        - Src:             './errmap.h:234,9'
          Dst:             mecherrmap__pairarray_getaddr
        - Src:             './errmap.h:235,6'
          Dst:             mecherror_cmp
    - functionName:    mecherror_copy
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap_add
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          140
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - abort
        - cmp_OM_uint32
        - mecherrmap__pairarray_getaddr
        - mecherrmap__pairarray_grow
        - mecherrmap__pairarray_set
        - mecherror_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:193,9'
          Dst:             mecherrmap__pairarray_getaddr
        - Src:             './errmap.h:194,2'
          Dst:             cmp_OM_uint32
        - Src:             './errmap.h:194,2'
          Dst:             __assert_fail
        - Src:             './errmap.h:195,6'
          Dst:             cmp_OM_uint32
        - Src:             './errmap.h:196,6'
          Dst:             abort
        - Src:             './errmap.h:197,2'
          Dst:             mecherror_cmp
        - Src:             './errmap.h:197,2'
          Dst:             __assert_fail
        - Src:             './errmap.h:198,6'
          Dst:             mecherror_cmp
        - Src:             './errmap.h:199,6'
          Dst:             abort
        - Src:             './errmap.h:205,11'
          Dst:             mecherrmap__pairarray_grow
        - Src:             './errmap.h:208,5'
          Dst:             mecherrmap__pairarray_set
    - functionName:    free_one
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap_foreach
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - mecherrmap__pairarray_getaddr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:176,9'
          Dst:             mecherrmap__pairarray_getaddr
    - functionName:    gssint_mecherrmap_destroy
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_one
        - k5_os_mutex_destroy
        - mecherrmap_destroy
        - mecherrmap_foreach
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:165,5'
          Dst:             mecherrmap_foreach
        - Src:             'util_errmap.c:165,5'
          Dst:             free_one
        - Src:             'util_errmap.c:166,5'
          Dst:             mecherrmap_destroy
        - Src:             'util_errmap.c:167,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    mecherrmap_destroy
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mecherrmap__pairarray_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:272,5'
          Dst:             mecherrmap__pairarray_destroy
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mecherrmap_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/./errmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mecherrmap__pairarray_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './errmap.h:160,12'
          Dst:             mecherrmap__pairarray_init
    - functionName:    gssint_mecherrmap_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_errmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_finish_init
        - mecherrmap_destroy
        - mecherrmap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'util_errmap.c:143,11'
          Dst:             mecherrmap_init
        - Src:             'util_errmap.c:146,11'
          Dst:             k5_mutex_finish_init
        - Src:             'util_errmap.c:148,9'
          Dst:             mecherrmap_destroy
    - functionName:    gssint_g_seqstate_internalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_seqstate_externalize
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_seqstate_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_seqstate_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_seqstate_check
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          170
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_seqstate_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_seqstate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    k5_der_len_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_g_verify_token_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gssint_g_get_token_header
        - memcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'util_token.c:110,10'
          Dst:             gssint_g_get_token_header
        - Src:             'util_token.c:111,10'
          Dst:             memcmp
    - functionName:    gssint_g_get_token_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_der_get_taglen
        - k5_der_get_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'util_token.c:83,10'
          Dst:             k5_der_get_taglen
        - Src:             'util_token.c:88,10'
          Dst:             k5_der_get_value
    - functionName:    k5_der_get_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - k5_input_get_byte
        - k5_input_set_status
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:123,11'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:124,15'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:131,17'
          Dst:             k5_input_set_status
        - Src:             '../../../include/k5-der.h:134,32'
          Dst:             k5_input_get_byte
    - functionName:    k5_der_get_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_der_get_taglen
        - k5_input_get_bytes
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:160,10'
          Dst:             k5_der_get_taglen
        - Src:             '../../../include/k5-der.h:162,13'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-der.h:165,5'
          Dst:             k5_input_init
    - functionName:    k5_buf_add_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:126,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:129,9'
          Dst:             store_16_be
    - functionName:    k5_der_add_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_der_add_taglen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:102,5'
          Dst:             k5_der_add_taglen
        - Src:             '../../../include/k5-der.h:103,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_der_add_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_get_space
        - k5_der_len_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:77,19'
          Dst:             k5_der_len_len
        - Src:             '../../../include/k5-der.h:79,9'
          Dst:             k5_buf_get_space
    - functionName:    gssint_g_make_token_header
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add_uint16_be
        - k5_der_add_taglen
        - k5_der_add_value
        - k5_der_value_len
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'util_token.c:56,22'
          Dst:             k5_der_value_len
        - Src:             'util_token.c:58,5'
          Dst:             k5_der_add_taglen
        - Src:             'util_token.c:59,5'
          Dst:             k5_der_add_value
        - Src:             'util_token.c:61,9'
          Dst:             k5_buf_add_uint16_be
    - functionName:    k5_der_value_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_der_len_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:68,16'
          Dst:             k5_der_len_len
    - functionName:    gssint_g_token_size
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/util_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_der_value_len
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'util_token.c:40,27'
          Dst:             k5_der_value_len
        - Src:             'util_token.c:42,12'
          Dst:             k5_der_value_len
    - functionName:    initialize_ggss_error_table
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/gssapi_err_generic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gssapi_err_generic.c:55,12'
          Dst:             add_error_table
    - functionName:    allow_mech_by_default
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          105
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - generic_gss_test_oid_set_member
        - gss_inquire_attrs_for_mech
        - gss_release_oid_set
        - gssint_get_public_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_accept_sec_context.c:105,12'
          Dst:             gssint_get_public_oid
        - Src:             'g_accept_sec_context.c:109,14'
          Dst:             gss_inquire_attrs_for_mech
        - Src:             'g_accept_sec_context.c:119,9'
          Dst:             generic_gss_test_oid_set_member
        - Src:             'g_accept_sec_context.c:122,14'
          Dst:             generic_gss_test_oid_set_member
        - Src:             'g_accept_sec_context.c:126,12'
          Dst:             gss_release_oid_set
    - functionName:    val_acc_sec_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          160
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_accept_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         128
      ICount:          749
      EdgeCount:       175
      CyclomaticComplexity: 49
      functionsReached:
        - allow_mech_by_default
        - generic_gss_copy_oid
        - gss_release_buffer
        - gssint_convert_name_to_union_name
        - gssint_create_union_context
        - gssint_get_mech_type
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
        - memcmp
        - val_acc_sec_ctx_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_accept_sec_context.c:155,14'
          Dst:             val_acc_sec_ctx_args
        - Src:             'g_accept_sec_context.c:182,11'
          Dst:             gssint_get_mech_type
        - Src:             'g_accept_sec_context.c:194,17'
          Dst:             gssint_get_public_oid
        - Src:             'g_accept_sec_context.c:195,22'
          Dst:             memcmp
        - Src:             'g_accept_sec_context.c:203,15'
          Dst:             gssint_select_mech_type
        - Src:             'g_accept_sec_context.c:218,11'
          Dst:             gssint_create_union_context
        - Src:             'g_accept_sec_context.c:229,6'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_accept_sec_context.c:236,17'
          Dst:             allow_mech_by_default
        - Src:             'g_accept_sec_context.c:246,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_accept_sec_context.c:269,3'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_accept_sec_context.c:283,21'
          Dst:             gssint_convert_name_to_union_name
        - Src:             'g_accept_sec_context.c:289,4'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_accept_sec_context.c:291,15'
          Dst:             gss_release_buffer
        - Src:             'g_accept_sec_context.c:307,17'
          Dst:             gssint_get_public_oid
        - Src:             'g_accept_sec_context.c:310,8'
          Dst:             memcmp
        - Src:             'g_accept_sec_context.c:324,16'
          Dst:             generic_gss_copy_oid
        - Src:             'g_accept_sec_context.c:348,16'
          Dst:             gssint_get_public_oid
        - Src:             'g_accept_sec_context.c:385,9'
          Dst:             gss_release_buffer
    - functionName:    copy_mech_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - gss_release_buffer
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_release_internal_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:296,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred.c:304,9'
          Dst:             gss_release_buffer
        - Src:             'g_acquire_cred.c:310,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_acquire_cred.c:314,20'
          Dst:             gssint_get_public_oid
        - Src:             'g_acquire_cred.c:318,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_acquire_cred.c:319,9'
          Dst:             gssint_release_internal_name
    - functionName:    copy_union_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          223
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - copy_mech_cred
        - gss_release_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:337,13'
          Dst:             calloc
        - Src:             'g_acquire_cred.c:340,26'
          Dst:             calloc
        - Src:             'g_acquire_cred.c:341,25'
          Dst:             calloc
        - Src:             'g_acquire_cred.c:354,11'
          Dst:             copy_mech_cred
        - Src:             'g_acquire_cred.c:369,12'
          Dst:             gss_release_cred
    - functionName:    val_add_cred_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          175
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:274,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_add_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_add_cred_from
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:382,12'
          Dst:             gss_add_cred_from
    - functionName:    gss_add_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         120
      ICount:          727
      EdgeCount:       163
      CyclomaticComplexity: 45
      functionsReached:
        - copy_union_cred
        - gss_release_cred
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_make_public_oid_set
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
        - realloc
        - val_add_cred_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:410,14'
          Dst:             val_add_cred_args
        - Src:             'g_acquire_cred.c:425,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_acquire_cred.c:430,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred.c:438,2'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_acquire_cred.c:453,11'
          Dst:             copy_union_cred
        - Src:             'g_acquire_cred.c:462,6'
          Dst:             memcmp
        - Src:             'g_acquire_cred.c:465,10'
          Dst:             gssint_import_internal_name
        - Src:             'g_acquire_cred.c:487,29'
          Dst:             gssint_get_public_oid
        - Src:             'g_acquire_cred.c:511,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_acquire_cred.c:517,14'
          Dst:             realloc
        - Src:             'g_acquire_cred.c:525,14'
          Dst:             realloc
        - Src:             'g_acquire_cred.c:547,11'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_acquire_cred.c:563,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred.c:574,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred.c:580,9'
          Dst:             gss_release_cred
    - functionName:    val_acq_cred_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          145
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:78,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_acquire_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          386
      EdgeCount:       91
      CyclomaticComplexity: 25
      functionsReached:
        - calloc
        - generic_gss_release_oid_set
        - gss_add_cred_from
        - gss_indicate_mechs_by_attrs
        - gss_release_cred
        - gssint_make_public_oid_set
        - val_acq_cred_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:114,13'
          Dst:             val_acq_cred_args
        - Src:             'g_acquire_cred.c:135,10'
          Dst:             gss_indicate_mechs_by_attrs
        - Src:             'g_acquire_cred.c:149,31'
          Dst:             calloc
        - Src:             'g_acquire_cred.c:161,10'
          Dst:             gss_add_cred_from
        - Src:             'g_acquire_cred.c:207,10'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_acquire_cred.c:220,2'
          Dst:             gss_release_cred
        - Src:             'g_acquire_cred.c:222,9'
          Dst:             generic_gss_release_oid_set
    - functionName:    gss_acquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_acquire_cred_from
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred.c:93,12'
          Dst:             gss_acquire_cred_from
    - functionName:    val_add_cred_pw_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_with_pw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          232
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_with_pw.c:273,6'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_acquire_cred_with_pw.c:283,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_add_cred_with_password
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_with_pw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         116
      ICount:          742
      EdgeCount:       158
      CyclomaticComplexity: 44
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_make_public_oid_set
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
        - val_add_cred_pw_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_with_pw.c:322,14'
          Dst:             val_add_cred_pw_args
        - Src:             'g_acquire_cred_with_pw.c:337,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_acquire_cred_with_pw.c:342,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred_with_pw.c:359,6'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_acquire_cred_with_pw.c:367,2'
          Dst:             memcmp
        - Src:             'g_acquire_cred_with_pw.c:370,6'
          Dst:             gssint_import_internal_name
        - Src:             'g_acquire_cred_with_pw.c:387,14'
          Dst:             gss_create_empty_oid_set
        - Src:             'g_acquire_cred_with_pw.c:392,9'
          Dst:             gssint_get_public_oid
        - Src:             'g_acquire_cred_with_pw.c:391,14'
          Dst:             gss_add_oid_set_member
        - Src:             'g_acquire_cred_with_pw.c:407,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_acquire_cred_with_pw.c:448,11'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_acquire_cred_with_pw.c:479,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred_with_pw.c:484,8'
          Dst:             gss_release_oid_set
        - Src:             'g_acquire_cred_with_pw.c:498,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred_with_pw.c:502,8'
          Dst:             gss_release_oid_set
    - functionName:    val_acq_cred_pw_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_with_pw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          202
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_with_pw.c:81,6'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_acquire_cred_with_pw.c:91,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_acquire_cred_with_password
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_with_pw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          328
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - gss_add_cred_with_password
        - gss_release_cred
        - gssint_get_mechanism
        - gssint_make_public_oid_set
        - val_acq_cred_pw_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_with_pw.c:117,13'
          Dst:             val_acq_cred_pw_args
        - Src:             'g_acquire_cred_with_pw.c:139,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred_with_pw.c:165,10'
          Dst:             gss_add_cred_with_password
        - Src:             'g_acquire_cred_with_pw.c:205,10'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_acquire_cred_with_pw.c:208,13'
          Dst:             gss_release_cred
    - functionName:    val_add_cred_impersonate_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          191
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_imp_name.c:302,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_add_cred_impersonate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         119
      ICount:          756
      EdgeCount:       162
      CyclomaticComplexity: 45
      functionsReached:
        - gss_add_oid_set_member
        - gss_create_empty_oid_set
        - gss_release_oid_set
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_make_public_oid_set
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
        - val_add_cred_impersonate_name_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_imp_name.c:340,14'
          Dst:             val_add_cred_impersonate_name_args
        - Src:             'g_acquire_cred_imp_name.c:355,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_acquire_cred_imp_name.c:360,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred_imp_name.c:377,6'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_acquire_cred_imp_name.c:383,2'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_acquire_cred_imp_name.c:391,2'
          Dst:             memcmp
        - Src:             'g_acquire_cred_imp_name.c:394,6'
          Dst:             gssint_import_internal_name
        - Src:             'g_acquire_cred_imp_name.c:411,14'
          Dst:             gss_create_empty_oid_set
        - Src:             'g_acquire_cred_imp_name.c:416,9'
          Dst:             gssint_get_public_oid
        - Src:             'g_acquire_cred_imp_name.c:415,14'
          Dst:             gss_add_oid_set_member
        - Src:             'g_acquire_cred_imp_name.c:431,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_acquire_cred_imp_name.c:472,11'
          Dst:             gssint_make_public_oid_set
        - Src:             'g_acquire_cred_imp_name.c:503,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred_imp_name.c:507,9'
          Dst:             gss_release_oid_set
        - Src:             'g_acquire_cred_imp_name.c:521,9'
          Dst:             gssint_release_internal_name
        - Src:             'g_acquire_cred_imp_name.c:525,9'
          Dst:             gss_release_oid_set
    - functionName:    val_acq_cred_impersonate_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          161
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - gssint_mecherrmap_map_errcode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_imp_name.c:105,6'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    gss_acquire_cred_impersonate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_acquire_cred_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          334
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - generic_gss_copy_oid_set
        - gss_add_cred_impersonate_name
        - gss_release_cred
        - gssint_get_mechanism
        - val_acq_cred_impersonate_name_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_acquire_cred_imp_name.c:134,13'
          Dst:             val_acq_cred_impersonate_name_args
        - Src:             'g_acquire_cred_imp_name.c:156,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_acquire_cred_imp_name.c:182,10'
          Dst:             gss_add_cred_impersonate_name
        - Src:             'g_acquire_cred_imp_name.c:232,10'
          Dst:             generic_gss_copy_oid_set
        - Src:             'g_acquire_cred_imp_name.c:234,13'
          Dst:             gss_release_cred
    - functionName:    gss_release_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_release_buffer_set
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'g_buffer_set.c:54,12'
          Dst:             generic_gss_release_buffer_set
    - functionName:    gss_add_buffer_set_member
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_add_buffer_set_member
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_buffer_set.c:45,12'
          Dst:             generic_gss_add_buffer_set_member
    - functionName:    gss_create_empty_buffer_set
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_buffer_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_create_empty_buffer_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_buffer_set.c:37,12'
          Dst:             generic_gss_create_empty_buffer_set
    - functionName:    val_comp_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_compare_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_compare_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_compare_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          507
      EdgeCount:       112
      CyclomaticComplexity: 33
      functionsReached:
        - gssint_get_mechanism
        - gssint_import_internal_name
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - memcmp
        - val_comp_name_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_compare_name.c:70,20'
          Dst:             val_comp_name_args
        - Src:             'g_compare_name.c:91,9'
          Dst:             gssint_get_mechanism
        - Src:             'g_compare_name.c:104,7'
          Dst:             memcmp
        - Src:             'g_compare_name.c:118,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_compare_name.c:151,8'
          Dst:             memcmp
        - Src:             'g_compare_name.c:161,7'
          Dst:             memcmp
        - Src:             'g_compare_name.c:182,20'
          Dst:             gssint_import_internal_name
        - Src:             'g_compare_name.c:197,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_compare_name.c:198,5'
          Dst:             gssint_release_internal_name
    - functionName:    gss_complete_auth_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_complete_auth_token.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_complete_auth_token.c:62,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_complete_auth_token.c:70,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_context_time
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_context_time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          118
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_context_time.c:57,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_context_time.c:67,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_del_sec_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_delete_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_delete_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_delete_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          107
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_delete_internal_sec_context
        - val_del_sec_ctx_args
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'g_delete_sec_context.c:71,14'
          Dst:             val_del_sec_ctx_args
        - Src:             'g_delete_sec_context.c:85,11'
          Dst:             gssint_delete_internal_sec_context
    - functionName:    gss_delete_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_del_name_attr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          109
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_del_name_attr.c:51,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_del_name_attr.c:62,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    val_dsp_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_display_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          126
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gssalloc_malloc
        - gssint_display_internal_name
        - val_dsp_name_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_dsp_name.c:79,20'
          Dst:             val_dsp_name_args
        - Src:             'g_dsp_name.c:90,10'
          Dst:             gssint_display_internal_name
        - Src:             'g_dsp_name.c:98,3'
          Dst:             gssalloc_malloc
    - functionName:    val_dsp_name_ext_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_name_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_display_name_ext
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_name_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          288
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - memcmp
        - val_dsp_name_ext_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_dsp_name_ext.c:82,14'
          Dst:             val_dsp_name_ext_args
        - Src:             'g_dsp_name_ext.c:92,16'
          Dst:             gssint_get_mechanism
        - Src:             'g_dsp_name_ext.c:98,17'
          Dst:             memcmp
        - Src:             'g_dsp_name_ext.c:104,21'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_dsp_name_ext.c:113,17'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_dsp_name_ext.c:119,10'
          Dst:             memcmp
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssalloc_strdup
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gssalloc_malloc
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/gssapi/gssapi_alloc.h:122,19'
          Dst:             strlen
        - Src:             '../../../include/gssapi/gssapi_alloc.h:123,18'
          Dst:             gssalloc_malloc
    - functionName:    displayMajor
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          508
      EdgeCount:       113
      CyclomaticComplexity: 19
      functionsReached:
        - dgettext
        - gssalloc_strdup
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'g_dsp_status.c:149,3'
          Branch Sides:    []
        - Branch String:   'g_dsp_status.c:179,3'
          Branch Sides:    []
        - Branch String:   'g_dsp_status.c:295,3'
          Branch Sides:    []
      Callsites:
        - Src:             'g_dsp_status.c:147,15'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:151,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:156,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:161,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:165,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:181,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:185,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:189,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:194,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:198,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:203,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:209,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:213,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:217,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:221,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:225,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:229,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:234,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:239,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:244,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:249,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:254,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:260,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:297,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:302,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:307,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:311,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:315,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:320,13'
          Dst:             dgettext
        - Src:             'g_dsp_status.c:341,19'
          Dst:             strlen
        - Src:             'g_dsp_status.c:342,18'
          Dst:             gssalloc_strdup
    - functionName:    gss_display_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dsp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          263
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - displayMajor
        - gssalloc_strdup
        - gssint_g_display_com_err_status
        - gssint_get_mechanism
        - gssint_mecherrmap_get
        - gssint_mecherrmap_map
        - gssint_mecherrmap_map_errcode
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_dsp_status.c:63,10'
          Dst:             displayMajor
        - Src:             'g_dsp_status.c:76,25'
          Dst:             gssalloc_strdup
        - Src:             'g_dsp_status.c:79,6'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_dsp_status.c:82,26'
          Dst:             strlen
        - Src:             'g_dsp_status.c:91,8'
          Dst:             gssint_mecherrmap_get
        - Src:             'g_dsp_status.c:94,6'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_dsp_status.c:99,15'
          Dst:             gssint_g_display_com_err_status
        - Src:             'g_dsp_status.c:101,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_dsp_status.c:108,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_dsp_status.c:120,6'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_dup_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dup_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          67
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_duplicate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_dup_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          273
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - generic_gss_copy_oid
        - generic_gss_release_oid
        - gssint_create_copy_buffer
        - gssint_import_internal_name
        - gssint_mecherrmap_map_errcode
        - gssint_release_internal_name
        - val_dup_name_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_dup_name.c:60,17'
          Dst:             val_dup_name_args
        - Src:             'g_dup_name.c:81,6'
          Dst:             gssint_create_copy_buffer
        - Src:             'g_dup_name.c:86,18'
          Dst:             generic_gss_copy_oid
        - Src:             'g_dup_name.c:90,7'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_dup_name.c:99,18'
          Dst:             generic_gss_copy_oid
        - Src:             'g_dup_name.c:103,7'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_dup_name.c:107,18'
          Dst:             gssint_import_internal_name
        - Src:             'g_dup_name.c:128,11'
          Dst:             generic_gss_release_oid
        - Src:             'g_dup_name.c:131,11'
          Dst:             gssint_release_internal_name
        - Src:             'g_dup_name.c:135,11'
          Dst:             generic_gss_release_oid
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    val_exp_sec_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_exp_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          80
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_export_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_exp_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          253
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - gss_release_buffer
        - gssalloc_malloc
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - val_exp_sec_ctx_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_exp_sec_context.c:81,14'
          Dst:             val_exp_sec_ctx_args
        - Src:             'g_exp_sec_context.c:94,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_exp_sec_context.c:103,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_exp_sec_context.c:109,33'
          Dst:             gssalloc_malloc
        - Src:             'g_exp_sec_context.c:130,12'
          Dst:             gss_release_buffer
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5buf_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../generic/gssapiP_generic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../generic/gssapiP_generic.h:206,9'
          Dst:             k5_buf_status
    - functionName:    k5_buf_add_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:144,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:147,9'
          Dst:             store_32_be
    - functionName:    val_exp_cred_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          71
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_export_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          166
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - gss_release_buffer
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - k5_buf_add_len
        - k5_buf_add_uint32_be
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5buf_to_gss
        - val_exp_cred_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_export_cred.c:71,14'
          Dst:             val_exp_cred_args
        - Src:             'g_export_cred.c:75,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'g_export_cred.c:81,22'
          Dst:             gssint_get_public_oid
        - Src:             'g_export_cred.c:82,16'
          Dst:             gssint_get_mechanism
        - Src:             'g_export_cred.c:94,13'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_export_cred.c:99,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'g_export_cred.c:100,9'
          Dst:             k5_buf_add_len
        - Src:             'g_export_cred.c:101,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'g_export_cred.c:102,9'
          Dst:             k5_buf_add_len
        - Src:             'g_export_cred.c:103,9'
          Dst:             gss_release_buffer
        - Src:             'g_export_cred.c:106,12'
          Dst:             k5buf_to_gss
        - Src:             'g_export_cred.c:109,5'
          Dst:             k5_buf_free
    - functionName:    gss_export_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_export_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          100
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - gssint_export_internal_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_export_name.c:52,9'
          Dst:             gssint_export_internal_name
    - functionName:    gss_export_name_composite
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_export_name_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          145
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_export_name_comp.c:64,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_export_name_comp.c:75,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    gss_get_name_attribute
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_get_name_attr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          211
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_get_name_attr.c:74,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_get_name_attr.c:90,9'
          Dst:             gssint_mecherrmap_map
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5_der_add_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_get_space
        - k5_der_len_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:77,19'
          Dst:             k5_der_len_len
        - Src:             '../../../include/k5-der.h:79,9'
          Dst:             k5_buf_get_space
    - functionName:    k5_der_len_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    gssint_create_union_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - generic_gss_copy_oid
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:517,11'
          Dst:             calloc
        - Src:             'g_glue.c:523,14'
          Dst:             generic_gss_copy_oid
    - functionName:    gssint_create_copy_buffer
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          120
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gssalloc_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:491,32'
          Dst:             gssalloc_malloc
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_get_mechanism_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:460,6'
          Dst:             memcmp
    - functionName:    gssint_convert_name_to_union_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          251
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - generic_gss_copy_oid
        - gss_release_oid
        - gssint_mecherrmap_map
        - gssint_mecherrmap_map_errcode
        - gssint_release_internal_name
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:381,2'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_glue.c:389,20'
          Dst:             generic_gss_copy_oid
        - Src:             'g_glue.c:392,2'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_glue.c:410,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_glue.c:413,20'
          Dst:             generic_gss_copy_oid
        - Src:             'g_glue.c:416,2'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_glue.c:432,6'
          Dst:             gss_release_oid
        - Src:             'g_glue.c:434,6'
          Dst:             gss_release_oid
        - Src:             'g_glue.c:442,9'
          Dst:             gssint_release_internal_name
    - functionName:    gssint_release_internal_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:323,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_glue.c:330,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    gssint_delete_internal_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gssint_get_mechanism
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:348,12'
          Dst:             gssint_get_mechanism
    - functionName:    gssint_display_internal_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:297,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_glue.c:306,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    k5_buf_add_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:144,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:147,9'
          Dst:             store_32_be
    - functionName:    k5_der_add_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_der_add_taglen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:102,5'
          Dst:             k5_der_add_taglen
        - Src:             '../../../include/k5-der.h:103,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_buf_add_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:126,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:129,9'
          Dst:             store_16_be
    - functionName:    k5_der_value_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_der_len_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:68,16'
          Dst:             k5_der_len_len
    - functionName:    gssint_export_internal_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          198
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - gss_release_buffer
        - gssalloc_malloc
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - k5_buf_add_len
        - k5_buf_add_uint16_be
        - k5_buf_add_uint32_be
        - k5_buf_init_fixed
        - k5_der_add_value
        - k5_der_value_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:216,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_glue.c:225,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_glue.c:261,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_glue.c:266,20'
          Dst:             k5_der_value_len
        - Src:             'g_glue.c:268,23'
          Dst:             gssalloc_malloc
        - Src:             'g_glue.c:271,9'
          Dst:             gss_release_buffer
        - Src:             'g_glue.c:274,5'
          Dst:             k5_buf_init_fixed
        - Src:             'g_glue.c:277,5'
          Dst:             k5_buf_add_len
        - Src:             'g_glue.c:278,5'
          Dst:             k5_buf_add_uint16_be
        - Src:             'g_glue.c:279,5'
          Dst:             k5_der_add_value
        - Src:             'g_glue.c:280,5'
          Dst:             k5_buf_add_uint32_be
        - Src:             'g_glue.c:281,5'
          Dst:             k5_buf_add_len
        - Src:             'g_glue.c:282,5'
          Dst:             __assert_fail
        - Src:             'g_glue.c:285,12'
          Dst:             gss_release_buffer
    - functionName:    import_internal_attributes
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          198
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - gss_release_buffer
        - gss_release_buffer_set
        - gssint_get_mechanism
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:97,13'
          Dst:             gssint_get_mechanism
        - Src:             'g_glue.c:111,2'
          Dst:             gss_release_buffer_set
        - Src:             'g_glue.c:135,6'
          Dst:             gss_release_buffer
        - Src:             'g_glue.c:136,6'
          Dst:             gss_release_buffer
        - Src:             'g_glue.c:140,5'
          Dst:             gss_release_buffer_set
    - functionName:    gssint_import_internal_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          227
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - import_internal_attributes
        - memcmp
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:158,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_glue.c:168,2'
          Dst:             memcmp
        - Src:             'g_glue.c:175,3'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_glue.c:181,16'
          Dst:             gssint_get_public_oid
        - Src:             'g_glue.c:195,9'
          Dst:             import_internal_attributes
        - Src:             'g_glue.c:198,2'
          Dst:             gssint_mecherrmap_map
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gssint_get_mech_type
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          109
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - gssint_g_get_token_header
        - k5_input_init
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_glue.c:65,2'
          Dst:             memcmp
        - Src:             'g_glue.c:75,2'
          Dst:             k5_input_init
        - Src:             'g_glue.c:76,10'
          Dst:             gssint_g_get_token_header
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    get_entry
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          146
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - load_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_cred.c:68,11'
          Dst:             load_32_be
        - Src:             'g_imp_cred.c:79,11'
          Dst:             load_32_be
    - functionName:    val_imp_cred_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          95
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_import_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          317
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - calloc
        - get_entry
        - gss_release_cred
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
        - val_imp_cred_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_cred.c:103,14'
          Dst:             val_imp_cred_args
        - Src:             'g_imp_cred.c:109,18'
          Dst:             get_entry
        - Src:             'g_imp_cred.c:115,12'
          Dst:             calloc
        - Src:             'g_imp_cred.c:120,25'
          Dst:             calloc
        - Src:             'g_imp_cred.c:123,24'
          Dst:             calloc
        - Src:             'g_imp_cred.c:129,15'
          Dst:             get_entry
        - Src:             'g_imp_cred.c:132,18'
          Dst:             gssint_select_mech_type
        - Src:             'g_imp_cred.c:136,16'
          Dst:             gssint_get_mechanism
        - Src:             'g_imp_cred.c:144,41'
          Dst:             gssint_get_public_oid
        - Src:             'g_imp_cred.c:151,13'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_imp_cred.c:175,11'
          Dst:             gss_release_cred
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    k5_der_len_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_der_get_taglen
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - k5_input_get_byte
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:123,11'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:124,15'
          Dst:             k5_input_get_byte
        - Src:             '../../../include/k5-der.h:131,17'
          Dst:             k5_input_set_status
        - Src:             '../../../include/k5-der.h:134,32'
          Dst:             k5_input_get_byte
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    k5_input_get_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:111,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:112,32'
          Dst:             load_32_be
    - functionName:    k5_der_value_len
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_der_len_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:68,16'
          Dst:             k5_der_len_len
    - functionName:    k5_der_get_value
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-der.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_der_get_taglen
        - k5_input_get_bytes
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-der.h:160,10'
          Dst:             k5_der_get_taglen
        - Src:             '../../../include/k5-der.h:162,13'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-der.h:165,5'
          Dst:             k5_input_init
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    importExportName
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          414
      EdgeCount:       80
      CyclomaticComplexity: 24
      functionsReached:
        - generic_gss_copy_oid
        - gssint_get_mechanism
        - gssint_mecherrmap_map
        - gssint_mecherrmap_map_errcode
        - k5_der_get_value
        - k5_der_value_len
        - k5_input_get_byte
        - k5_input_get_bytes
        - k5_input_get_uint16_be
        - k5_input_get_uint32_be
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_name.c:191,5'
          Dst:             k5_input_init
        - Src:             'g_imp_name.c:193,9'
          Dst:             k5_input_get_byte
        - Src:             'g_imp_name.c:195,10'
          Dst:             k5_input_get_byte
        - Src:             'g_imp_name.c:199,18'
          Dst:             k5_input_get_uint16_be
        - Src:             'g_imp_name.c:201,10'
          Dst:             k5_der_get_value
        - Src:             'g_imp_name.c:204,23'
          Dst:             k5_der_value_len
        - Src:             'g_imp_name.c:208,17'
          Dst:             gssint_get_mechanism
        - Src:             'g_imp_name.c:231,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_imp_name.c:233,14'
          Dst:             generic_gss_copy_oid
        - Src:             'g_imp_name.c:236,3'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_imp_name.c:258,15'
          Dst:             k5_input_get_uint32_be
        - Src:             'g_imp_name.c:259,12'
          Dst:             k5_input_get_bytes
        - Src:             'g_imp_name.c:277,2'
          Dst:             k5_input_init
        - Src:             'g_imp_name.c:278,16'
          Dst:             k5_input_get_uint16_be
        - Src:             'g_imp_name.c:279,6'
          Dst:             k5_input_get_bytes
        - Src:             'g_imp_name.c:314,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_imp_name.c:318,13'
          Dst:             generic_gss_copy_oid
        - Src:             'g_imp_name.c:320,2'
          Dst:             gssint_mecherrmap_map_errcode
    - functionName:    val_imp_name_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          140
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_name.c:70,3'
          Dst:             memcmp
    - functionName:    gss_import_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          328
      EdgeCount:       70
      CyclomaticComplexity: 20
      functionsReached:
        - generic_gss_copy_oid
        - generic_gss_release_oid
        - gssint_create_copy_buffer
        - gssint_mecherrmap_map_errcode
        - gssint_release_internal_name
        - importExportName
        - memcmp
        - val_imp_name_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_name.c:93,20'
          Dst:             val_imp_name_args
        - Src:             'g_imp_name.c:120,20'
          Dst:             gssint_create_copy_buffer
        - Src:             'g_imp_name.c:128,17'
          Dst:             generic_gss_copy_oid
        - Src:             'g_imp_name.c:132,6'
          Dst:             gssint_mecherrmap_map_errcode
        - Src:             'g_imp_name.c:147,3'
          Dst:             memcmp
        - Src:             'g_imp_name.c:148,3'
          Dst:             memcmp
        - Src:             'g_imp_name.c:149,17'
          Dst:             importExportName
        - Src:             'g_imp_name.c:166,6'
          Dst:             generic_gss_release_oid
        - Src:             'g_imp_name.c:168,6'
          Dst:             gssint_release_internal_name
        - Src:             'g_imp_name.c:171,6'
          Dst:             generic_gss_release_oid
    - functionName:    val_imp_sec_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          95
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_import_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_imp_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          279
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - gssint_create_union_context
        - gssint_get_mechanism
        - gssint_get_public_oid
        - gssint_mecherrmap_map
        - gssint_select_mech_type
        - val_imp_sec_ctx_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_imp_sec_context.c:87,14'
          Dst:             val_imp_sec_ctx_args
        - Src:             'g_imp_sec_context.c:121,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_imp_sec_context.c:126,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_imp_sec_context.c:133,14'
          Dst:             gssint_create_union_context
        - Src:             'g_imp_sec_context.c:138,16'
          Dst:             gssint_get_public_oid
        - Src:             'g_imp_sec_context.c:150,5'
          Dst:             gssint_mecherrmap_map
    - functionName:    val_init_sec_ctx_args
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          138
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gss_init_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_init_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          341
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - gssint_create_union_context
        - gssint_get_mechanism
        - gssint_get_mechanism_cred
        - gssint_get_public_oid
        - gssint_import_internal_name
        - gssint_mecherrmap_map
        - gssint_release_internal_name
        - gssint_select_mech_type
        - memcmp
        - val_init_sec_ctx_args
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'g_init_sec_context.c:110,14'
          Dst:             val_init_sec_ctx_args
        - Src:             'g_init_sec_context.c:126,14'
          Dst:             gssint_select_mech_type
        - Src:             'g_init_sec_context.c:138,12'
          Dst:             gssint_get_mechanism
        - Src:             'g_init_sec_context.c:151,2'
          Dst:             memcmp
        - Src:             'g_init_sec_context.c:154,16'
          Dst:             gssint_import_internal_name
        - Src:             'g_init_sec_context.c:168,11'
          Dst:             gssint_create_union_context
        - Src:             'g_init_sec_context.c:186,25'
          Dst:             gssint_get_mechanism_cred
        - Src:             'g_init_sec_context.c:197,2'
          Dst:             gssint_get_public_oid
        - Src:             'g_init_sec_context.c:215,2'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_init_sec_context.c:228,9'
          Dst:             gssint_release_internal_name
    - functionName:    gssspi_set_cred_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_cred_option.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gss_set_cred_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_cred_option.c:195,12'
          Dst:             gss_set_cred_option
    - functionName:    gss_set_cred_option
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_cred_option.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          226
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - alloc_union_cred
        - gssint_get_mechanism
        - gssint_mecherrmap_map
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_cred_option.c:121,16'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_cred_option.c:133,6'
          Dst:             gssint_mecherrmap_map
        - Src:             'g_set_cred_option.c:138,15'
          Dst:             alloc_union_cred
        - Src:             'g_set_cred_option.c:150,13'
          Dst:             gssint_get_mechanism
        - Src:             'g_set_cred_option.c:170,3'
          Dst:             gssint_mecherrmap_map
    - functionName:    alloc_union_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/mechglue/g_set_cred_option.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - generic_gss_copy_oid
        - gss_release_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'g_set_cred_option.c:49,12'
          Dst:             calloc
        - Src:             'g_set_cred_option.c:58,24'
          Dst:             calloc
        - Src:             'g_set_cred_option.c:65,14'
          Dst:             generic_gss_copy_oid
        - Src:             'g_set_cred_option.c:76,2'
          Dst:             gss_release_cred
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_cbt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_find_authdata
        - krb5_free_authdata
        - load_32_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:423,12'
          Dst:             krb5_find_authdata
        - Src:             'accept_sec_context.c:430,25'
          Dst:             load_32_le
        - Src:             'accept_sec_context.c:435,5'
          Dst:             krb5_free_authdata
    - functionName:    kg_process_extension
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - iakerb_verify_finished
        - krb5_auth_con_getrecvsubkey_k
        - krb5_k_free_key
      functionUses:    1
      BranchProfiles:
        - Branch String:   'accept_sec_context.c:368,5'
          Branch Sides:    []
      Callsites:
        - Src:             'accept_sec_context.c:366,5'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:375,20'
          Dst:             krb5_auth_con_getrecvsubkey_k
        - Src:             'accept_sec_context.c:379,20'
          Dst:             iakerb_verify_finished
        - Src:             'accept_sec_context.c:384,13'
          Dst:             krb5_k_free_key
    - functionName:    k5_input_get_uint32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:111,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:112,32'
          Dst:             load_32_be
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rd_and_store_for_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          272
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - k5_cc_store_primary_cred
        - k5_mutex_init
        - k5_os_mutex_destroy
        - k5alloc
        - kg_init_name
        - krb5_auth_con_free
        - krb5_auth_con_getflags
        - krb5_auth_con_init
        - krb5_auth_con_setflags
        - krb5_cc_destroy
        - krb5_cc_initialize
        - krb5_cc_new_unique
        - krb5_free_tgt_creds
        - krb5_rd_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:177,19'
          Dst:             krb5_auth_con_getflags
        - Src:             'accept_sec_context.c:179,5'
          Dst:             krb5_auth_con_setflags
        - Src:             'accept_sec_context.c:203,9'
          Dst:             krb5_rd_cred
        - Src:             'accept_sec_context.c:204,23'
          Dst:             krb5_auth_con_init
        - Src:             'accept_sec_context.c:206,9'
          Dst:             krb5_auth_con_setflags
        - Src:             'accept_sec_context.c:207,23'
          Dst:             krb5_rd_cred
        - Src:             'accept_sec_context.c:215,19'
          Dst:             krb5_cc_new_unique
        - Src:             'accept_sec_context.c:220,19'
          Dst:             krb5_cc_initialize
        - Src:             'accept_sec_context.c:223,19'
          Dst:             k5_cc_store_primary_cred
        - Src:             'accept_sec_context.c:226,12'
          Dst:             k5alloc
        - Src:             'accept_sec_context.c:230,14'
          Dst:             k5_mutex_init
        - Src:             'accept_sec_context.c:234,14'
          Dst:             kg_init_name
        - Src:             'accept_sec_context.c:237,9'
          Dst:             k5_os_mutex_destroy
        - Src:             'accept_sec_context.c:254,9'
          Dst:             krb5_free_tgt_creds
        - Src:             'accept_sec_context.c:257,15'
          Dst:             krb5_cc_destroy
        - Src:             'accept_sec_context.c:262,9'
          Dst:             krb5_auth_con_free
        - Src:             'accept_sec_context.c:264,5'
          Dst:             krb5_auth_con_setflags
    - functionName:    k5_input_get_uint16_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:97,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:98,32'
          Dst:             load_16_le
    - functionName:    k5_input_get_uint32_le
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:118,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:119,32'
          Dst:             load_32_le
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./gssapiP_krb5.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './gssapiP_krb5.h:1295,21'
          Dst:             empty_data
    - functionName:    create_constrained_deleg_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          118
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - encode_krb5_ticket
        - kg_compose_deleg_cred
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:128,5'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:129,5'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:140,12'
          Dst:             encode_krb5_ticket
        - Src:             'accept_sec_context.c:148,20'
          Dst:             kg_compose_deleg_cred
        - Src:             'accept_sec_context.c:156,5'
          Dst:             krb5_free_data
    - functionName:    process_checksum
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          460
      EdgeCount:       92
      CyclomaticComplexity: 27
      functionsReached:
        - __assert_fail
        - check_cbt
        - empty_data
        - k5_bcmp
        - k5_input_get_bytes
        - k5_input_get_uint16_le
        - k5_input_get_uint32_be
        - k5_input_get_uint32_le
        - k5_input_init
        - kg_checksum_channel_bindings
        - kg_process_extension
        - krb5_auth_con_getkey_k
        - krb5_k_free_key
        - krb5_k_verify_checksum
        - make_data
        - rd_and_store_for_creds
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:465,31'
          Dst:             empty_data
        - Src:             'accept_sec_context.c:484,16'
          Dst:             krb5_auth_con_getkey_k
        - Src:             'accept_sec_context.c:492,16'
          Dst:             krb5_k_verify_checksum
        - Src:             'accept_sec_context.c:495,9'
          Dst:             krb5_k_free_key
        - Src:             'accept_sec_context.c:512,9'
          Dst:             k5_input_init
        - Src:             'accept_sec_context.c:513,18'
          Dst:             k5_input_get_uint32_le
        - Src:             'accept_sec_context.c:520,20'
          Dst:             k5_input_get_bytes
        - Src:             'accept_sec_context.c:522,20'
          Dst:             kg_checksum_channel_bindings
        - Src:             'accept_sec_context.c:528,13'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:529,33'
          Dst:             k5_bcmp
        - Src:             'accept_sec_context.c:530,25'
          Dst:             k5_bcmp
        - Src:             'accept_sec_context.c:538,23'
          Dst:             k5_input_get_uint32_le
        - Src:             'accept_sec_context.c:545,25'
          Dst:             k5_input_get_uint16_le
        - Src:             'accept_sec_context.c:546,26'
          Dst:             k5_input_get_uint16_le
        - Src:             'accept_sec_context.c:547,28'
          Dst:             k5_input_get_bytes
        - Src:             'accept_sec_context.c:548,22'
          Dst:             make_data
        - Src:             'accept_sec_context.c:560,20'
          Dst:             rd_and_store_for_creds
        - Src:             'accept_sec_context.c:572,25'
          Dst:             k5_input_get_uint32_be
        - Src:             'accept_sec_context.c:573,26'
          Dst:             k5_input_get_uint32_be
        - Src:             'accept_sec_context.c:574,28'
          Dst:             k5_input_get_bytes
        - Src:             'accept_sec_context.c:575,22'
          Dst:             make_data
        - Src:             'accept_sec_context.c:582,20'
          Dst:             kg_process_extension
        - Src:             'accept_sec_context.c:598,12'
          Dst:             check_cbt
    - functionName:    parse_init_token
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 628
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          222
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - gssint_g_get_token_header
        - k5_input_get_uint16_be
        - k5_input_init
        - make_data
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:633,5'
          Dst:             k5_input_init
        - Src:             'accept_sec_context.c:634,10'
          Dst:             gssint_g_get_token_header
        - Src:             'accept_sec_context.c:636,9'
          Dst:             k5_input_get_uint16_be
        - Src:             'accept_sec_context.c:639,9'
          Dst:             memcmp
        - Src:             'accept_sec_context.c:641,14'
          Dst:             memcmp
        - Src:             'accept_sec_context.c:643,14'
          Dst:             memcmp
        - Src:             'accept_sec_context.c:645,14'
          Dst:             memcmp
        - Src:             'accept_sec_context.c:650,19'
          Dst:             make_data
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_accept_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1306
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_gss_accept_sec_context_ext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:1296,12'
          Dst:             krb5_gss_accept_sec_context_ext
    - functionName:    krb5_gss_accept_sec_context_ext
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1251
      functionLinenumberEnd: 1279
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          108
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - kg_accept_dce
        - kg_accept_krb5
        - krb5_gss_save_error_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:1262,20'
          Dst:             kg_accept_dce
        - Src:             'accept_sec_context.c:1269,13'
          Dst:             krb5_gss_save_error_string
        - Src:             'accept_sec_context.c:1274,12'
          Dst:             kg_accept_krb5
    - functionName:    kg_accept_dce
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          233
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - kg_duplicate_name
        - krb5_gss_delete_sec_context
        - krb5_rd_rep_dce
        - krb5_timeofday
        - ts_incr
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'accept_sec_context.c:300,12'
          Dst:             krb5_timeofday
        - Src:             'accept_sec_context.c:309,12'
          Dst:             krb5_rd_rep_dce
        - Src:             'accept_sec_context.c:321,16'
          Dst:             kg_duplicate_name
        - Src:             'accept_sec_context.c:333,33'
          Dst:             ts_incr
        - Src:             'accept_sec_context.c:333,21'
          Dst:             ts_interval
        - Src:             'accept_sec_context.c:349,12'
          Dst:             krb5_gss_delete_sec_context
    - functionName:    kg_accept_krb5
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/accept_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 1234
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         270
      ICount:          1776
      EdgeCount:       368
      CyclomaticComplexity: 100
      functionsReached:
        - __assert_fail
        - create_constrained_deleg_creds
        - data_to_gss
        - decode_krb5_ap_req
        - gssalloc_malloc
        - gssint_g_make_token_header
        - gssint_g_seqstate_init
        - gssint_g_token_size
        - k5_buf_add_len
        - k5_buf_init_fixed
        - k5_mutex_unlock
        - kg_cred_resolve
        - kg_duplicate_name
        - kg_init_name
        - kg_release_name
        - kg_setup_keys
        - krb5_auth_con_free
        - krb5_auth_con_get_authdata_context
        - krb5_auth_con_getauthenticator
        - krb5_auth_con_getflags
        - krb5_auth_con_getkey_k
        - krb5_auth_con_getlocalseqnumber
        - krb5_auth_con_getrecvsubkey_k
        - krb5_auth_con_getremoteseqnumber
        - krb5_auth_con_getsendsubkey_k
        - krb5_auth_con_init
        - krb5_auth_con_set_authdata_context
        - krb5_auth_con_setaddrs
        - krb5_auth_con_setflags
        - krb5_auth_con_setpermetypes
        - krb5_auth_con_setrcache
        - krb5_cc_close
        - krb5_free_ap_req
        - krb5_free_authenticator
        - krb5_free_context
        - krb5_free_data_contents
        - krb5_gss_acquire_cred
        - krb5_gss_delete_sec_context
        - krb5_gss_init_context
        - krb5_gss_release_cred
        - krb5_gss_save_error_info
        - krb5_merge_authdata
        - krb5_mk_error
        - krb5_mk_rep
        - krb5_rd_req_decoded
        - krb5_timeofday
        - krb5_us_timeofday
        - krb5int_accessor
        - make_data
        - parse_init_token
        - process_checksum
        - ts_incr
        - ts_interval
      functionUses:    1
      BranchProfiles:
        - Branch String:   'accept_sec_context.c:997,13'
          Branch Sides:    []
      Callsites:
        - Src:             'accept_sec_context.c:692,12'
          Dst:             krb5int_accessor
        - Src:             'accept_sec_context.c:698,12'
          Dst:             krb5_gss_init_context
        - Src:             'accept_sec_context.c:722,24'
          Dst:             krb5_gss_acquire_cred
        - Src:             'accept_sec_context.c:734,20'
          Dst:             kg_cred_resolve
        - Src:             'accept_sec_context.c:751,12'
          Dst:             parse_init_token
        - Src:             'accept_sec_context.c:759,18'
          Dst:             make_data
        - Src:             'accept_sec_context.c:782,12'
          Dst:             decode_krb5_ap_req
        - Src:             'accept_sec_context.c:791,17'
          Dst:             krb5_auth_con_init
        - Src:             'accept_sec_context.c:793,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'accept_sec_context.c:798,21'
          Dst:             krb5_auth_con_setrcache
        - Src:             'accept_sec_context.c:803,17'
          Dst:             krb5_auth_con_setaddrs
        - Src:             'accept_sec_context.c:810,21'
          Dst:             krb5_auth_con_setpermetypes
        - Src:             'accept_sec_context.c:817,12'
          Dst:             krb5_rd_req_decoded
        - Src:             'accept_sec_context.c:824,5'
          Dst:             krb5_auth_con_setflags
        - Src:             'accept_sec_context.c:827,5'
          Dst:             krb5_auth_con_getauthenticator
        - Src:             'accept_sec_context.c:829,20'
          Dst:             process_checksum
        - Src:             'accept_sec_context.c:868,25'
          Dst:             krb5_merge_authdata
        - Src:             'accept_sec_context.c:875,17'
          Dst:             kg_init_name
        - Src:             'accept_sec_context.c:880,17'
          Dst:             krb5_auth_con_get_authdata_context
        - Src:             'accept_sec_context.c:885,17'
          Dst:             kg_init_name
        - Src:             'accept_sec_context.c:892,5'
          Dst:             krb5_auth_con_set_authdata_context
        - Src:             'accept_sec_context.c:894,17'
          Dst:             krb5_auth_con_getrecvsubkey_k
        - Src:             'accept_sec_context.c:903,21'
          Dst:             krb5_auth_con_getkey_k
        - Src:             'accept_sec_context.c:923,16'
          Dst:             kg_setup_keys
        - Src:             'accept_sec_context.c:940,24'
          Dst:             create_constrained_deleg_creds
        - Src:             'accept_sec_context.c:950,9'
          Dst:             krb5_auth_con_getremoteseqnumber
        - Src:             'accept_sec_context.c:954,17'
          Dst:             krb5_timeofday
        - Src:             'accept_sec_context.c:959,12'
          Dst:             gssint_g_seqstate_init
        - Src:             'accept_sec_context.c:1016,20'
          Dst:             krb5_auth_con_getflags
        - Src:             'accept_sec_context.c:1019,24'
          Dst:             krb5_auth_con_setflags
        - Src:             'accept_sec_context.c:1027,21'
          Dst:             krb5_mk_rep
        - Src:             'accept_sec_context.c:1032,9'
          Dst:             krb5_auth_con_getlocalseqnumber
        - Src:             'accept_sec_context.c:1038,20'
          Dst:             krb5_auth_con_getsendsubkey_k
        - Src:             'accept_sec_context.c:1046,20'
          Dst:             kg_setup_keys
        - Src:             'accept_sec_context.c:1056,13'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:1061,20'
          Dst:             data_to_gss
        - Src:             'accept_sec_context.c:1081,24'
          Dst:             gssint_g_token_size
        - Src:             'accept_sec_context.c:1082,23'
          Dst:             gssalloc_malloc
        - Src:             'accept_sec_context.c:1088,9'
          Dst:             k5_buf_init_fixed
        - Src:             'accept_sec_context.c:1089,9'
          Dst:             gssint_g_make_token_header
        - Src:             'accept_sec_context.c:1090,9'
          Dst:             k5_buf_add_len
        - Src:             'accept_sec_context.c:1091,9'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:1106,16'
          Dst:             kg_duplicate_name
        - Src:             'accept_sec_context.c:1119,33'
          Dst:             ts_incr
        - Src:             'accept_sec_context.c:1119,21'
          Dst:             ts_interval
        - Src:             'accept_sec_context.c:1142,9'
          Dst:             krb5_free_authenticator
        - Src:             'accept_sec_context.c:1146,19'
          Dst:             krb5_auth_con_setrcache
        - Src:             'accept_sec_context.c:1148,9'
          Dst:             krb5_auth_con_free
        - Src:             'accept_sec_context.c:1151,9'
          Dst:             krb5_free_data_contents
        - Src:             'accept_sec_context.c:1162,16'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'accept_sec_context.c:1166,19'
          Dst:             krb5_cc_close
        - Src:             'accept_sec_context.c:1168,13'
          Dst:             kg_release_name
        - Src:             'accept_sec_context.c:1174,16'
          Dst:             kg_release_name
        - Src:             'accept_sec_context.c:1198,16'
          Dst:             krb5_us_timeofday
        - Src:             'accept_sec_context.c:1202,16'
          Dst:             krb5_mk_error
        - Src:             'accept_sec_context.c:1208,24'
          Dst:             gssint_g_token_size
        - Src:             'accept_sec_context.c:1209,23'
          Dst:             gssalloc_malloc
        - Src:             'accept_sec_context.c:1212,9'
          Dst:             k5_buf_init_fixed
        - Src:             'accept_sec_context.c:1213,9'
          Dst:             gssint_g_make_token_header
        - Src:             'accept_sec_context.c:1214,9'
          Dst:             k5_buf_add_len
        - Src:             'accept_sec_context.c:1215,9'
          Dst:             __assert_fail
        - Src:             'accept_sec_context.c:1217,9'
          Dst:             krb5_free_data_contents
        - Src:             'accept_sec_context.c:1223,5'
          Dst:             krb5_free_ap_req
        - Src:             'accept_sec_context.c:1225,9'
          Dst:             k5_mutex_unlock
        - Src:             'accept_sec_context.c:1227,9'
          Dst:             krb5_gss_release_cred
        - Src:             'accept_sec_context.c:1230,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'accept_sec_context.c:1231,9'
          Dst:             krb5_free_context
    - functionName:    check_keytab
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - k5_kt_have_match
        - krb5_kt_free_entry
        - krb5_kt_get_entry
        - krb5_set_error_message
        - krb5_unparse_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:134,16'
          Dst:             krb5_kt_get_entry
        - Src:             'acquire_cred.c:136,13'
          Dst:             krb5_kt_free_entry
        - Src:             'acquire_cred.c:145,12'
          Dst:             k5_kt_have_match
        - Src:             'acquire_cred.c:147,13'
          Dst:             krb5_unparse_name
        - Src:             'acquire_cred.c:148,38'
          Dst:             dgettext
        - Src:             'acquire_cred.c:148,13'
          Dst:             krb5_set_error_message
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire_init_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          383
      EdgeCount:       98
      CyclomaticComplexity: 27
      functionsReached:
        - __assert_fail
        - can_get_initial_creds
        - get_cache_for_name
        - get_name_from_client_keytab
        - kg_caller_provided_ccache_name
        - kg_sync_ccache_name
        - krb5_cc_dup
        - krb5_cc_new_unique
        - krb5_cccol_have_content
        - krb5_clear_error_message
        - krb5_kt_client_default
        - krb5_kt_dup
        - krb5int_cc_default
        - krb5int_copy_data_contents_add0
        - krb5int_trace
        - make_data
        - maybe_get_initial_cred
        - scan_ccache
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:692,9'
          Dst:             kg_sync_ccache_name
        - Src:             'acquire_cred.c:694,9'
          Dst:             kg_caller_provided_ccache_name
        - Src:             'acquire_cred.c:699,18'
          Dst:             make_data
        - Src:             'acquire_cred.c:700,16'
          Dst:             krb5int_copy_data_contents_add0
        - Src:             'acquire_cred.c:706,9'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:707,16'
          Dst:             krb5_cc_new_unique
        - Src:             'acquire_cred.c:712,16'
          Dst:             krb5_cc_dup
        - Src:             'acquire_cred.c:717,16'
          Dst:             krb5int_cc_default
        - Src:             'acquire_cred.c:723,16'
          Dst:             krb5_kt_dup
        - Src:             'acquire_cred.c:725,16'
          Dst:             krb5_kt_client_default
        - Src:             'acquire_cred.c:729,13'
          Dst:             krb5int_trace
        - Src:             'acquire_cred.c:730,13'
          Dst:             krb5_clear_error_message
        - Src:             'acquire_cred.c:739,16'
          Dst:             scan_ccache
        - Src:             'acquire_cred.c:744,22'
          Dst:             get_name_from_client_keytab
        - Src:             'acquire_cred.c:746,24'
          Dst:             can_get_initial_creds
        - Src:             'acquire_cred.c:754,16'
          Dst:             get_cache_for_name
        - Src:             'acquire_cred.c:762,32'
          Dst:             can_get_initial_creds
        - Src:             'acquire_cred.c:763,16'
          Dst:             krb5_cccol_have_content
        - Src:             'acquire_cred.c:769,12'
          Dst:             maybe_get_initial_cred
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    scan_ccache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          347
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - can_get_initial_creds
        - k5_sname_compare
        - kg_init_name
        - krb5_build_principal_ext
        - krb5_cc_end_seq_get
        - krb5_cc_get_principal
        - krb5_cc_next_cred
        - krb5_cc_set_flags
        - krb5_cc_start_seq_get
        - krb5_free_cred_contents
        - krb5_free_principal
        - krb5_is_config_principal
        - krb5_principal_compare
        - scan_cc_config
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:364,12'
          Dst:             krb5_cc_set_flags
        - Src:             'acquire_cred.c:368,12'
          Dst:             krb5_cc_get_principal
        - Src:             'acquire_cred.c:374,16'
          Dst:             kg_init_name
        - Src:             'acquire_cred.c:382,18'
          Dst:             k5_sname_compare
        - Src:             'acquire_cred.c:390,9'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:395,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:397,12'
          Dst:             krb5_build_principal_ext
        - Src:             'acquire_cred.c:407,12'
          Dst:             krb5_cc_start_seq_get
        - Src:             'acquire_cred.c:409,9'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:412,21'
          Dst:             krb5_cc_next_cred
        - Src:             'acquire_cred.c:413,13'
          Dst:             krb5_is_config_principal
        - Src:             'acquire_cred.c:414,20'
          Dst:             scan_cc_config
        - Src:             'acquire_cred.c:415,13'
          Dst:             krb5_free_cred_contents
        - Src:             'acquire_cred.c:420,18'
          Dst:             krb5_principal_compare
        - Src:             'acquire_cred.c:422,9'
          Dst:             krb5_free_cred_contents
        - Src:             'acquire_cred.c:428,5'
          Dst:             krb5_cc_end_seq_get
        - Src:             'acquire_cred.c:433,31'
          Dst:             can_get_initial_creds
        - Src:             'acquire_cred.c:439,11'
          Dst:             krb5_cc_set_flags
        - Src:             'acquire_cred.c:440,5'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:441,5'
          Dst:             krb5_free_principal
    - functionName:    get_name_from_client_keytab
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - k5_kt_get_principal
        - kg_init_name
        - krb5_free_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:516,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:521,12'
          Dst:             k5_kt_get_principal
        - Src:             'acquire_cred.c:524,12'
          Dst:             kg_init_name
        - Src:             'acquire_cred.c:527,9'
          Dst:             krb5_free_principal
    - functionName:    can_get_initial_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_kt_have_match
        - krb5_kt_have_content
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:336,17'
          Dst:             krb5_kt_have_content
        - Src:             'acquire_cred.c:344,12'
          Dst:             k5_kt_have_match
    - functionName:    get_cache_for_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          216
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - can_get_initial_creds
        - krb5_cc_cache_match
        - krb5_cc_close
        - krb5_cc_default
        - krb5_cc_get_principal
        - krb5_cc_get_type
        - krb5_cc_new_unique
        - krb5_cc_support_switch
        - krb5_clear_error_message
        - krb5_free_principal
        - scan_ccache
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:455,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:462,15'
          Dst:             can_get_initial_creds
        - Src:             'acquire_cred.c:465,12'
          Dst:             krb5_cc_cache_match
        - Src:             'acquire_cred.c:467,16'
          Dst:             scan_ccache
        - Src:             'acquire_cred.c:470,5'
          Dst:             krb5_clear_error_message
        - Src:             'acquire_cred.c:474,12'
          Dst:             krb5_cc_default
        - Src:             'acquire_cred.c:477,14'
          Dst:             krb5_cc_get_type
        - Src:             'acquire_cred.c:478,23'
          Dst:             krb5_cc_support_switch
        - Src:             'acquire_cred.c:483,13'
          Dst:             krb5_cc_get_principal
        - Src:             'acquire_cred.c:487,9'
          Dst:             krb5_clear_error_message
        - Src:             'acquire_cred.c:496,16'
          Dst:             krb5_cc_new_unique
        - Src:             'acquire_cred.c:502,5'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:504,9'
          Dst:             krb5_cc_close
    - functionName:    maybe_get_initial_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          102
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - get_initial_cred
        - kg_cred_time_to_refresh
        - krb5_clear_error_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:670,30'
          Dst:             kg_cred_time_to_refresh
        - Src:             'acquire_cred.c:671,16'
          Dst:             get_initial_cred
        - Src:             'acquire_cred.c:675,9'
          Dst:             krb5_clear_error_message
    - functionName:    kg_cred_time_to_refresh
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_timeofday
        - set_refresh_time
        - ts_after
        - ts_incr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:555,9'
          Dst:             krb5_timeofday
        - Src:             'acquire_cred.c:557,12'
          Dst:             ts_incr
        - Src:             'acquire_cred.c:561,37'
          Dst:             ts_after
        - Src:             'acquire_cred.c:562,9'
          Dst:             set_refresh_time
        - Src:             'acquire_cred.c:568,9'
          Dst:             ts_after
    - functionName:    get_initial_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          178
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - kg_cred_set_initial_refresh
        - krb5_free_cred_contents
        - krb5_free_principal
        - krb5_get_init_creds_keytab
        - krb5_get_init_creds_opt_alloc
        - krb5_get_init_creds_opt_free
        - krb5_get_init_creds_opt_set_out_ccache
        - krb5_get_init_creds_password
        - verify_initial_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:618,12'
          Dst:             krb5_get_init_creds_opt_alloc
        - Src:             'acquire_cred.c:621,12'
          Dst:             krb5_get_init_creds_opt_set_out_ccache
        - Src:             'acquire_cred.c:625,16'
          Dst:             krb5_get_init_creds_password
        - Src:             'acquire_cred.c:629,16'
          Dst:             krb5_get_init_creds_keytab
        - Src:             'acquire_cred.c:637,16'
          Dst:             verify_initial_cred
        - Src:             'acquire_cred.c:641,5'
          Dst:             kg_cred_set_initial_refresh
        - Src:             'acquire_cred.c:647,5'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:652,5'
          Dst:             krb5_free_cred_contents
        - Src:             'acquire_cred.c:653,5'
          Dst:             krb5_get_init_creds_opt_free
    - functionName:    verify_initial_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_verify_init_creds
        - krb5_verify_init_creds_opt_init
        - krb5_verify_init_creds_opt_set_ap_req_nofail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:603,5'
          Dst:             krb5_verify_init_creds_opt_init
        - Src:             'acquire_cred.c:604,5'
          Dst:             krb5_verify_init_creds_opt_set_ap_req_nofail
        - Src:             'acquire_cred.c:605,12'
          Dst:             krb5_verify_init_creds
    - functionName:    kg_cred_set_initial_refresh
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - set_refresh_time
        - ts_delta
        - ts_incr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:588,23'
          Dst:             ts_delta
        - Src:             'acquire_cred.c:587,15'
          Dst:             ts_incr
        - Src:             'acquire_cred.c:589,5'
          Dst:             set_refresh_time
    - functionName:    ts_delta
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2348
      functionLinenumberEnd: 2349
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_refresh_time
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_cc_set_config
        - krb5_clear_error_message
        - snprintf
        - string2data
        - ts2tt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:542,52'
          Dst:             ts2tt
        - Src:             'acquire_cred.c:542,5'
          Dst:             snprintf
        - Src:             'acquire_cred.c:543,9'
          Dst:             string2data
        - Src:             'acquire_cred.c:544,11'
          Dst:             krb5_cc_set_config
        - Src:             'acquire_cred.c:546,5'
          Dst:             krb5_clear_error_message
    - functionName:    ts2tt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2340
      functionLinenumberEnd: 2341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    scan_cc_config
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          159
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - atol
        - data_eq_string
        - empty_data
        - krb5_free_data_contents
        - krb5_parse_name
        - krb5int_copy_data_contents_add0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:297,23'
          Dst:             empty_data
        - Src:             'acquire_cred.c:301,9'
          Dst:             data_eq_string
        - Src:             'acquire_cred.c:303,16'
          Dst:             krb5int_copy_data_contents_add0
        - Src:             'acquire_cred.c:306,16'
          Dst:             krb5_parse_name
        - Src:             'acquire_cred.c:307,9'
          Dst:             krb5_free_data_contents
        - Src:             'acquire_cred.c:310,16'
          Dst:             data_eq_string
        - Src:             'acquire_cred.c:312,16'
          Dst:             krb5int_copy_data_contents_add0
        - Src:             'acquire_cred.c:315,30'
          Dst:             atol
        - Src:             'acquire_cred.c:316,9'
          Dst:             krb5_free_data_contents
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    atol
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire_accept_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          252
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - __assert_fail
        - check_keytab
        - k5_change_error_message_code
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_rc_close
        - k5_rc_resolve
        - kg_acceptor_princ
        - krb5_get_server_rcache
        - krb5_kt_close
        - krb5_kt_default
        - krb5_kt_dup
        - krb5_kt_have_content
        - krb5_kt_resolve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:170,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:174,16'
          Dst:             k5_rc_resolve
        - Src:             'acquire_cred.c:182,16'
          Dst:             krb5_kt_dup
        - Src:             'acquire_cred.c:184,9'
          Dst:             k5_mutex_lock
        - Src:             'acquire_cred.c:186,20'
          Dst:             krb5_kt_resolve
        - Src:             'acquire_cred.c:187,13'
          Dst:             k5_mutex_unlock
        - Src:             'acquire_cred.c:189,13'
          Dst:             k5_mutex_unlock
        - Src:             'acquire_cred.c:190,20'
          Dst:             krb5_kt_default
        - Src:             'acquire_cred.c:199,16'
          Dst:             kg_acceptor_princ
        - Src:             'acquire_cred.c:206,16'
          Dst:             check_keytab
        - Src:             'acquire_cred.c:209,17'
          Dst:             k5_change_error_message_code
        - Src:             'acquire_cred.c:218,20'
          Dst:             krb5_get_server_rcache
        - Src:             'acquire_cred.c:227,16'
          Dst:             krb5_kt_have_content
        - Src:             'acquire_cred.c:242,9'
          Dst:             krb5_kt_close
        - Src:             'acquire_cred.c:244,9'
          Dst:             k5_rc_close
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    acquire_cred_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      int
      argCount:        14
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          380
      EdgeCount:       75
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - acquire_accept_cred
        - acquire_init_cred
        - k5_mutex_init
        - k5_mutex_unlock
        - k5alloc
        - kg_cred_resolve
        - kg_duplicate_name
        - kg_release_cred
        - krb5_gss_save_error_info
        - krb5_timeofday
        - ts_interval
      functionUses:    2
      BranchProfiles:
        - Branch String:   'acquire_cred.c:822,5'
          Branch Sides:    []
      Callsites:
        - Src:             'acquire_cred.c:802,12'
          Dst:             k5alloc
        - Src:             'acquire_cred.c:818,12'
          Dst:             k5_mutex_init
        - Src:             'acquire_cred.c:834,16'
          Dst:             kg_duplicate_name
        - Src:             'acquire_cred.c:845,15'
          Dst:             acquire_accept_cred
        - Src:             'acquire_cred.c:856,15'
          Dst:             acquire_init_cred
        - Src:             'acquire_cred.c:862,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:872,16'
          Dst:             krb5_timeofday
        - Src:             'acquire_cred.c:878,19'
          Dst:             kg_cred_resolve
        - Src:             'acquire_cred.c:882,25'
          Dst:             ts_interval
        - Src:             'acquire_cred.c:883,13'
          Dst:             k5_mutex_unlock
        - Src:             'acquire_cred.c:897,5'
          Dst:             kg_release_cred
        - Src:             'acquire_cred.c:898,5'
          Dst:             krb5_gss_save_error_info
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    kg_cred_resolve
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          315
      EdgeCount:       77
      CyclomaticComplexity: 22
      functionsReached:
        - __assert_fail
        - get_cache_for_name
        - get_name_from_client_keytab
        - k5_mutex_unlock
        - kg_init_name
        - krb5_cc_close
        - krb5_cc_select
        - krb5_free_principal
        - krb5_gss_save_error_info
        - krb5_gss_validate_cred_1
        - krb5int_cc_default
        - maybe_get_initial_cred
        - scan_ccache
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:955,11'
          Dst:             krb5_gss_validate_cred_1
        - Src:             'acquire_cred.c:963,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:967,16'
          Dst:             krb5_cc_select
        - Src:             'acquire_cred.c:972,20'
          Dst:             kg_init_name
        - Src:             'acquire_cred.c:975,17'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:980,20'
          Dst:             scan_ccache
        - Src:             'acquire_cred.c:989,16'
          Dst:             krb5int_cc_default
        - Src:             'acquire_cred.c:992,16'
          Dst:             scan_ccache
        - Src:             'acquire_cred.c:995,13'
          Dst:             krb5_cc_close
        - Src:             'acquire_cred.c:1004,16'
          Dst:             get_name_from_client_keytab
        - Src:             'acquire_cred.c:1014,16'
          Dst:             get_cache_for_name
        - Src:             'acquire_cred.c:1020,12'
          Dst:             maybe_get_initial_cred
        - Src:             'acquire_cred.c:1027,5'
          Dst:             k5_mutex_unlock
        - Src:             'acquire_cred.c:1028,5'
          Dst:             krb5_gss_save_error_info
    - functionName:    iakerb_gss_acquire_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1343
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred_from
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1344,12'
          Dst:             acquire_cred_from
    - functionName:    acquire_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1183
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          416
      EdgeCount:       96
      CyclomaticComplexity: 29
      functionsReached:
        - acquire_cred_context
        - gss_krb5int_initialize_library
        - kg_value_from_cred_store
        - krb5_cc_close
        - krb5_cc_resolve
        - krb5_free_context
        - krb5_free_principal
        - krb5_gss_init_context
        - krb5_kt_close
        - krb5_kt_resolve
        - krb5_parse_name
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1197,12'
          Dst:             gss_krb5int_initialize_library
        - Src:             'acquire_cred.c:1204,12'
          Dst:             krb5_gss_init_context
        - Src:             'acquire_cred.c:1211,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1216,16'
          Dst:             krb5_cc_resolve
        - Src:             'acquire_cred.c:1224,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1229,16'
          Dst:             krb5_kt_resolve
        - Src:             'acquire_cred.c:1237,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1242,16'
          Dst:             krb5_kt_resolve
        - Src:             'acquire_cred.c:1250,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1254,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1271,24'
          Dst:             strlen
        - Src:             'acquire_cred.c:1276,11'
          Dst:             kg_value_from_cred_store
        - Src:             'acquire_cred.c:1288,20'
          Dst:             krb5_parse_name
        - Src:             'acquire_cred.c:1299,11'
          Dst:             acquire_cred_context
        - Src:             'acquire_cred.c:1306,9'
          Dst:             krb5_cc_close
        - Src:             'acquire_cred.c:1308,9'
          Dst:             krb5_kt_close
        - Src:             'acquire_cred.c:1310,9'
          Dst:             krb5_kt_close
        - Src:             'acquire_cred.c:1311,5'
          Dst:             krb5_free_principal
        - Src:             'acquire_cred.c:1312,5'
          Dst:             krb5_free_context
    - functionName:    krb5_gss_acquire_cred_from
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred_from
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1327,12'
          Dst:             acquire_cred_from
    - functionName:    gss_krb5int_import_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1174
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          154
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - acquire_cred
        - k5_mutex_init
        - k5_os_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1141,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:1159,16'
          Dst:             k5_mutex_init
        - Src:             'acquire_cred.c:1168,12'
          Dst:             acquire_cred
        - Src:             'acquire_cred.c:1172,9'
          Dst:             k5_os_mutex_destroy
    - functionName:    acquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 934
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          84
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - acquire_cred_context
        - gss_krb5int_initialize_library
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:913,12'
          Dst:             gss_krb5int_initialize_library
        - Src:             'acquire_cred.c:920,12'
          Dst:             krb5_gss_init_context
        - Src:             'acquire_cred.c:927,11'
          Dst:             acquire_cred_context
        - Src:             'acquire_cred.c:933,5'
          Dst:             krb5_free_context
    - functionName:    iakerb_gss_acquire_cred_with_password
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1123,12'
          Dst:             acquire_cred
    - functionName:    krb5_gss_acquire_cred_with_password
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1107,12'
          Dst:             acquire_cred
    - functionName:    iakerb_gss_acquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1092,12'
          Dst:             acquire_cred
    - functionName:    krb5_gss_acquire_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1080
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acquire_cred
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1081,12'
          Dst:             acquire_cred
    - functionName:    gss_krb5int_set_cred_rcache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1038
      functionLinenumberEnd: 1067
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - k5_rc_close
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:1044,5'
          Dst:             __assert_fail
        - Src:             'acquire_cred.c:1053,12'
          Dst:             krb5_gss_init_context
        - Src:             'acquire_cred.c:1059,9'
          Dst:             k5_rc_close
        - Src:             'acquire_cred.c:1063,5'
          Dst:             krb5_free_context
    - functionName:    gss_krb5int_register_acceptor_identity
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/acquire_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - gss_krb5int_initialize_library
        - k5_mutex_lock
        - k5_mutex_unlock
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acquire_cred.c:105,11'
          Dst:             gss_krb5int_initialize_library
        - Src:             'acquire_cred.c:110,15'
          Dst:             strdup
        - Src:             'acquire_cred.c:115,5'
          Dst:             k5_mutex_lock
        - Src:             'acquire_cred.c:118,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_gss_compare_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/compare_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kg_compare_name
        - krb5_free_context
        - krb5_gss_init_context
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'compare_name.c:37,12'
          Dst:             krb5_gss_init_context
        - Src:             'compare_name.c:44,19'
          Dst:             kg_compare_name
        - Src:             'compare_name.c:47,5'
          Dst:             krb5_free_context
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_context_time
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/context_time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          122
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_gss_save_error_info
        - krb5_timeofday
        - ts_incr
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'context_time.c:45,17'
          Dst:             krb5_timeofday
        - Src:             'context_time.c:47,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'context_time.c:52,35'
          Dst:             ts_incr
        - Src:             'context_time.c:53,17'
          Dst:             ts_interval
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    gss_krb5int_copy_ccache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/copy_ccache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_cc_copy_creds
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_save_error_info
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_ccache.c:15,5'
          Dst:             __assert_fail
        - Src:             'copy_ccache.c:24,5'
          Dst:             k5_mutex_lock
        - Src:             'copy_ccache.c:30,12'
          Dst:             krb5_gss_init_context
        - Src:             'copy_ccache.c:34,12'
          Dst:             krb5_cc_copy_creds
        - Src:             'copy_ccache.c:37,5'
          Dst:             k5_mutex_unlock
        - Src:             'copy_ccache.c:41,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'copy_ccache.c:42,9'
          Dst:             krb5_free_context
    - functionName:    kg_value_from_cred_store
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/cred_store.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'cred_store.c:42,13'
          Dst:             strcmp
    - functionName:    krb5_gss_delete_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/delete_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          275
      EdgeCount:       59
      CyclomaticComplexity: 16
      functionsReached:
        - explicit_bzero
        - gssint_g_seqstate_free
        - kg_release_name
        - krb5_auth_con_free
        - krb5_auth_con_setrcache
        - krb5_free_authdata
        - krb5_free_context
        - krb5_gss_release_oid
        - krb5_k_free_key
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'delete_sec_context.c:55,9'
          Dst:             gssint_g_seqstate_free
        - Src:             'delete_sec_context.c:58,9'
          Dst:             krb5_k_free_key
        - Src:             'delete_sec_context.c:61,9'
          Dst:             krb5_k_free_key
        - Src:             'delete_sec_context.c:64,9'
          Dst:             kg_release_name
        - Src:             'delete_sec_context.c:66,9'
          Dst:             kg_release_name
        - Src:             'delete_sec_context.c:68,9'
          Dst:             krb5_k_free_key
        - Src:             'delete_sec_context.c:70,9'
          Dst:             krb5_k_free_key
        - Src:             'delete_sec_context.c:74,19'
          Dst:             krb5_auth_con_setrcache
        - Src:             'delete_sec_context.c:76,9'
          Dst:             krb5_auth_con_free
        - Src:             'delete_sec_context.c:80,9'
          Dst:             krb5_gss_release_oid
        - Src:             'delete_sec_context.c:83,9'
          Dst:             krb5_free_authdata
        - Src:             'delete_sec_context.c:86,9'
          Dst:             krb5_free_context
        - Src:             'delete_sec_context.c:89,5'
          Dst:             explicit_bzero
    - functionName:    krb5_gss_display_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          159
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gssint_g_make_string_buffer
        - krb5_anonymous_principal
        - krb5_free_context
        - krb5_free_unparsed_name
        - krb5_gss_init_context
        - krb5_gss_save_error_info
        - krb5_principal_compare
        - krb5_unparse_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_name.c:42,12'
          Dst:             krb5_gss_init_context
        - Src:             'disp_name.c:50,36'
          Dst:             krb5_anonymous_principal
        - Src:             'disp_name.c:49,13'
          Dst:             krb5_principal_compare
        - Src:             'disp_name.c:54,17'
          Dst:             krb5_unparse_name
        - Src:             'disp_name.c:58,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'disp_name.c:59,9'
          Dst:             krb5_free_context
        - Src:             'disp_name.c:63,11'
          Dst:             gssint_g_make_string_buffer
        - Src:             'disp_name.c:64,9'
          Dst:             krb5_free_unparsed_name
        - Src:             'disp_name.c:65,9'
          Dst:             krb5_free_context
        - Src:             'disp_name.c:71,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'disp_name.c:72,5'
          Dst:             krb5_free_context
    - functionName:    gsserrmap__copy_key
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gsserrmap_replace_or_insert
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          100
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - gsserrmap__copy_key
        - gsserrmap__find_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './error_map.h:88,36'
          Dst:             gsserrmap__find_node
        - Src:             './error_map.h:102,8'
          Dst:             gsserrmap__copy_key
    - functionName:    gsserrmap__find_node
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - compare_OM_uint32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './error_map.h:59,6'
          Dst:             compare_OM_uint32
    - functionName:    compare_OM_uint32
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gsserrmap_init
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_display_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          206
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - gss_krb5int_initialize_library
        - gssint_g_display_major_status
        - gssint_g_make_string_buffer
        - krb5_gss_get_error_message
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:165,10'
          Dst:             memcmp
        - Src:             'disp_status.c:166,10'
          Dst:             memcmp
        - Src:             'disp_status.c:167,10'
          Dst:             memcmp
        - Src:             'disp_status.c:173,16'
          Dst:             gssint_g_display_major_status
        - Src:             'disp_status.c:176,16'
          Dst:             gss_krb5int_initialize_library
        - Src:             'disp_status.c:184,35'
          Dst:             krb5_gss_get_error_message
        - Src:             'disp_status.c:184,14'
          Dst:             gssint_g_make_string_buffer
    - functionName:    krb5_gss_get_error_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - error_message
        - gsserrmap_find
        - krb5int_getspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:48,20'
          Dst:             krb5int_getspecific
        - Src:             'disp_status.c:55,20'
          Dst:             gsserrmap_find
        - Src:             'disp_status.c:64,23'
          Dst:             error_message
    - functionName:    gsserrmap_find
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gsserrmap__find_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './error_map.h:67,36'
          Dst:             gsserrmap__find_node
    - functionName:    gsserrmap_destroy
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./error_map.h'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_delete_error_info
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gsserrmap_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:150,5'
          Dst:             gsserrmap_destroy
    - functionName:    krb5_gss_save_error_info
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_error_message
        - krb5_get_error_message
        - krb5_gss_save_error_string
        - krb5_set_error_message
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:137,17'
          Dst:             krb5_get_error_message
        - Src:             'disp_status.c:142,5'
          Dst:             krb5_gss_save_error_string
        - Src:             'disp_status.c:145,5'
          Dst:             krb5_set_error_message
        - Src:             'disp_status.c:146,5'
          Dst:             krb5_free_error_message
    - functionName:    krb5_gss_save_error_string
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_krb5_save_error_string_nocopy
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:109,15'
          Dst:             strdup
        - Src:             'disp_status.c:111,13'
          Dst:             gss_krb5_save_error_string_nocopy
    - functionName:    gss_krb5_save_error_string_nocopy
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - gsserrmap_destroy
        - gsserrmap_init
        - gsserrmap_replace_or_insert
        - krb5int_getspecific
        - krb5int_setspecific
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:79,9'
          Dst:             krb5int_getspecific
        - Src:             'disp_status.c:86,13'
          Dst:             gsserrmap_init
        - Src:             'disp_status.c:92,13'
          Dst:             krb5int_setspecific
        - Src:             'disp_status.c:93,13'
          Dst:             gsserrmap_destroy
        - Src:             'disp_status.c:100,11'
          Dst:             gsserrmap_replace_or_insert
    - functionName:    krb5_gss_save_error_message
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/disp_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gss_krb5_save_error_string_nocopy
        - vasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_status.c:122,9'
          Dst:             vasprintf
        - Src:             'disp_status.c:125,13'
          Dst:             gss_krb5_save_error_string_nocopy
    - functionName:    vasprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_duplicate_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/duplicate_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - kg_duplicate_name
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_save_error_info
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'duplicate_name.c:39,12'
          Dst:             krb5_gss_init_context
        - Src:             'duplicate_name.c:46,12'
          Dst:             kg_duplicate_name
        - Src:             'duplicate_name.c:49,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'duplicate_name.c:50,9'
          Dst:             krb5_free_context
        - Src:             'duplicate_name.c:53,5'
          Dst:             krb5_free_context
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_authdata_element
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_array_fmt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:211,11'
          Dst:             k5_json_array_fmt
    - functionName:    json_address
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_array_fmt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:165,11'
          Dst:             k5_json_array_fmt
    - functionName:    json_authdata
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - json_authdata_element
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_null_create_val
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:229,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:230,11'
          Dst:             k5_json_array_create
        - Src:             'export_cred.c:234,15'
          Dst:             json_authdata_element
        - Src:             'export_cred.c:237,15'
          Dst:             k5_json_array_add
        - Src:             'export_cred.c:238,9'
          Dst:             k5_json_release
        - Src:             'export_cred.c:245,5'
          Dst:             k5_json_release
    - functionName:    json_addresses
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - json_address
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_null_create_val
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:183,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:184,11'
          Dst:             k5_json_array_create
        - Src:             'export_cred.c:188,15'
          Dst:             json_address
        - Src:             'export_cred.c:191,15'
          Dst:             k5_json_array_add
        - Src:             'export_cred.c:192,9'
          Dst:             k5_json_release
        - Src:             'export_cred.c:199,5'
          Dst:             k5_json_release
    - functionName:    json_keyblock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_array_fmt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:149,11'
          Dst:             k5_json_array_fmt
    - functionName:    json_creds
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          170
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - json_addresses
        - json_authdata
        - json_keyblock
        - json_principal
        - k5_json_array_fmt
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:259,11'
          Dst:             json_principal
        - Src:             'export_cred.c:262,11'
          Dst:             json_principal
        - Src:             'export_cred.c:265,11'
          Dst:             json_keyblock
        - Src:             'export_cred.c:268,11'
          Dst:             json_addresses
        - Src:             'export_cred.c:271,11'
          Dst:             json_authdata
        - Src:             'export_cred.c:275,11'
          Dst:             k5_json_array_fmt
        - Src:             'export_cred.c:288,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:289,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:290,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:291,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:292,5'
          Dst:             k5_json_release
    - functionName:    json_principal
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_null_create_val
        - k5_json_string_create
        - krb5_free_unparsed_name
        - krb5_unparse_name
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:48,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:49,11'
          Dst:             krb5_unparse_name
        - Src:             'export_cred.c:52,11'
          Dst:             k5_json_string_create
        - Src:             'export_cred.c:53,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    json_ccache_contents
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          159
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - json_creds
        - json_principal
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_release
        - krb5_cc_end_seq_get
        - krb5_cc_get_principal
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_free_cred_contents
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:309,11'
          Dst:             k5_json_array_create
        - Src:             'export_cred.c:314,11'
          Dst:             krb5_cc_get_principal
        - Src:             'export_cred.c:317,11'
          Dst:             json_principal
        - Src:             'export_cred.c:318,5'
          Dst:             krb5_free_principal
        - Src:             'export_cred.c:321,11'
          Dst:             k5_json_array_add
        - Src:             'export_cred.c:322,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:327,11'
          Dst:             krb5_cc_start_seq_get
        - Src:             'export_cred.c:330,19'
          Dst:             krb5_cc_next_cred
        - Src:             'export_cred.c:331,15'
          Dst:             json_creds
        - Src:             'export_cred.c:332,9'
          Dst:             krb5_free_cred_contents
        - Src:             'export_cred.c:335,15'
          Dst:             k5_json_array_add
        - Src:             'export_cred.c:336,9'
          Dst:             k5_json_release
        - Src:             'export_cred.c:340,5'
          Dst:             krb5_cc_end_seq_get
        - Src:             'export_cred.c:347,5'
          Dst:             k5_json_release
    - functionName:    ts2tt
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2340
      functionLinenumberEnd: 2341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_etypes
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_null_create_val
        - k5_json_number_create
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:68,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:69,11'
          Dst:             k5_json_array_create
        - Src:             'export_cred.c:73,15'
          Dst:             k5_json_number_create
        - Src:             'export_cred.c:76,15'
          Dst:             k5_json_array_add
        - Src:             'export_cred.c:77,9'
          Dst:             k5_json_release
        - Src:             'export_cred.c:84,5'
          Dst:             k5_json_release
    - functionName:    json_ccache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - json_ccache_contents
        - k5_json_null_create_val
        - k5_json_string_create
        - krb5_cc_get_full_name
        - krb5_cc_get_type
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:361,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:362,16'
          Dst:             krb5_cc_get_type
        - Src:             'export_cred.c:362,9'
          Dst:             strcmp
        - Src:             'export_cred.c:363,16'
          Dst:             json_ccache_contents
        - Src:             'export_cred.c:365,15'
          Dst:             krb5_cc_get_full_name
        - Src:             'export_cred.c:368,15'
          Dst:             k5_json_string_create
    - functionName:    json_rcache
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_null_create_val
        - k5_json_string_create
        - k5_rc_get_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:135,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:136,33'
          Dst:             k5_rc_get_name
        - Src:             'export_cred.c:136,11'
          Dst:             k5_json_string_create
    - functionName:    json_keytab
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_null_create_val
        - k5_json_string_create
        - krb5_kt_get_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:118,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:119,11'
          Dst:             krb5_kt_get_name
        - Src:             'export_cred.c:122,11'
          Dst:             k5_json_string_create
    - functionName:    json_kgname
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_principal
        - k5_json_array_fmt
        - k5_json_null_create_val
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:98,16'
          Dst:             k5_json_null_create_val
        - Src:             'export_cred.c:99,11'
          Dst:             json_principal
        - Src:             'export_cred.c:102,11'
          Dst:             k5_json_array_fmt
        - Src:             'export_cred.c:103,5'
          Dst:             k5_json_release
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    data_to_gss
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/./gssapiP_krb5.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './gssapiP_krb5.h:1295,21'
          Dst:             empty_data
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    json_kgcred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          199
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - json_ccache
        - json_etypes
        - json_keytab
        - json_kgname
        - json_principal
        - json_rcache
        - k5_json_array_fmt
        - k5_json_release
        - ts2tt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:386,11'
          Dst:             json_kgname
        - Src:             'export_cred.c:389,11'
          Dst:             json_principal
        - Src:             'export_cred.c:392,11'
          Dst:             json_keytab
        - Src:             'export_cred.c:395,11'
          Dst:             json_rcache
        - Src:             'export_cred.c:398,11'
          Dst:             json_ccache
        - Src:             'export_cred.c:401,11'
          Dst:             json_keytab
        - Src:             'export_cred.c:404,11'
          Dst:             json_etypes
        - Src:             'export_cred.c:411,40'
          Dst:             ts2tt
        - Src:             'export_cred.c:412,40'
          Dst:             ts2tt
        - Src:             'export_cred.c:408,11'
          Dst:             k5_json_array_fmt
        - Src:             'export_cred.c:419,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:420,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:421,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:422,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:423,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:424,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:425,5'
          Dst:             k5_json_release
    - functionName:    krb5_gss_export_cred
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          134
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - data_to_gss
        - json_kgcred
        - k5_json_array_fmt
        - k5_json_encode
        - k5_json_release
        - k5_mutex_unlock
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_validate_cred_1
        - string2data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'export_cred.c:442,11'
          Dst:             krb5_gss_init_context
        - Src:             'export_cred.c:449,14'
          Dst:             krb5_gss_validate_cred_1
        - Src:             'export_cred.c:451,9'
          Dst:             krb5_free_context
        - Src:             'export_cred.c:456,9'
          Dst:             json_kgcred
        - Src:             'export_cred.c:458,9'
          Dst:             k5_json_array_fmt
        - Src:             'export_cred.c:460,9'
          Dst:             k5_json_encode
        - Src:             'export_cred.c:462,9'
          Dst:             string2data
        - Src:             'export_cred.c:463,9'
          Dst:             data_to_gss
        - Src:             'export_cred.c:469,5'
          Dst:             k5_mutex_unlock
        - Src:             'export_cred.c:470,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:471,5'
          Dst:             k5_json_release
        - Src:             'export_cred.c:472,5'
          Dst:             krb5_free_context
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_export_name
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          207
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gssalloc_malloc
        - krb5_free_context
        - krb5_gss_init_context
        - krb5_gss_save_error_info
        - krb5_unparse_name
        - store_16_be
        - store_32_be
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'export_name.c:42,12'
          Dst:             krb5_gss_init_context
        - Src:             'export_name.c:52,17'
          Dst:             krb5_unparse_name
        - Src:             'export_name.c:56,9'
          Dst:             krb5_gss_save_error_info
        - Src:             'export_name.c:57,9'
          Dst:             krb5_free_context
        - Src:             'export_name.c:61,5'
          Dst:             krb5_free_context
        - Src:             'export_name.c:62,14'
          Dst:             strlen
        - Src:             'export_name.c:64,28'
          Dst:             gssalloc_malloc
        - Src:             'export_name.c:75,5'
          Dst:             store_16_be
        - Src:             'export_name.c:81,5'
          Dst:             store_32_be
    - functionName:    gssalloc_malloc
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_gss_export_sec_context
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/export_sec_context.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          189
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - explicit_bzero
        - gssalloc_malloc
        - kg_ctx_externalize
        - kg_ctx_size
        - krb5_gss_delete_sec_context
        - krb5_gss_save_error_info
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'export_sec_context.c:56,17'
          Dst:             kg_ctx_size
        - Src:             'export_sec_context.c:60,20'
          Dst:             gssalloc_malloc
        - Src:             'export_sec_context.c:68,17'
          Dst:             kg_ctx_externalize
        - Src:             'export_sec_context.c:78,11'
          Dst:             krb5_gss_delete_sec_context
        - Src:             'export_sec_context.c:86,13'
          Dst:             krb5_gss_save_error_info
        - Src:             'export_sec_context.c:88,9'
          Dst:             explicit_bzero
    - functionName:    gss_krb5int_get_tkt_flags
      functionSourceFile: '/src/krb5/src/lib/gssapi/krb5/get_tkt_flags.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generic_gss_add_buffer_set_member
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'get_tkt_flags.c:44,12'
          Dst:             generic_gss_add_buffer_set_member
    - functionName:    gssint_g_display_com_err_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_com_err_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - error_message
        - gssint_g_make_string_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_com_err_status.c:55,33'
          Dst:             error_message
        - Src:             'disp_com_err_status.c:54,11'
          Dst:             gssint_g_make_string_buffer
    - functionName:    display_unknown
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_major_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
        - dgettext
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_major_status.c:116,24'
          Dst:             dgettext
        - Src:             'disp_major_status.c:116,9'
          Dst:             asprintf
        - Src:             'disp_major_status.c:119,22'
          Dst:             strlen
    - functionName:    asprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    33
      BranchProfiles:  []
      Callsites:       []
    - functionName:    display_bit
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_major_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - display_unknown
        - gssint_g_make_string_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_major_status.c:182,15'
          Dst:             gssint_g_make_string_buffer
        - Src:             'disp_major_status.c:187,31'
          Dst:             dgettext
        - Src:             'disp_major_status.c:187,15'
          Dst:             display_unknown
    - functionName:    display_calling
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_major_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - display_unknown
        - gssint_g_make_string_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_major_status.c:133,16'
          Dst:             dgettext
        - Src:             'disp_major_status.c:134,15'
          Dst:             gssint_g_make_string_buffer
        - Src:             'disp_major_status.c:139,31'
          Dst:             dgettext
        - Src:             'disp_major_status.c:139,15'
          Dst:             display_unknown
    - functionName:    display_routine
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_major_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - display_unknown
        - gssint_g_make_string_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_major_status.c:157,16'
          Dst:             dgettext
        - Src:             'disp_major_status.c:158,15'
          Dst:             gssint_g_make_string_buffer
        - Src:             'disp_major_status.c:163,31'
          Dst:             dgettext
        - Src:             'disp_major_status.c:163,15'
          Dst:             display_unknown
    - functionName:    gssint_g_display_major_status
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/disp_major_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          303
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - display_bit
        - display_calling
        - display_routine
        - gssint_g_make_string_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'disp_major_status.c:215,15'
          Dst:             gssint_g_make_string_buffer
        - Src:             'disp_major_status.c:229,24'
          Dst:             display_routine
        - Src:             'disp_major_status.c:251,24'
          Dst:             display_calling
        - Src:             'disp_major_status.c:288,16'
          Dst:             display_bit
    - functionName:    gssalloc_free
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/../../../include/gssapi/gssapi_alloc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generic_gss_release_buffer
      functionSourceFile: '/src/krb5/src/lib/gssapi/generic/rel_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gssalloc_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rel_buffer.c:51,9'
          Dst:             gssalloc_free
    - functionName:    aux_storeptr_ptr_seqof_spake_factor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1729
      functionLinenumberEnd: 1729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_spake_factor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1729
      functionLinenumberEnd: 1729
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_spake_factor_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1727
      functionLinenumberEnd: 1727
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_spake_factor_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1727
      functionLinenumberEnd: 1727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_vmacs_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1664
      functionLinenumberEnd: 1664
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_vmacs_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1663
      functionLinenumberEnd: 1663
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_vmacs_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1663
      functionLinenumberEnd: 1663
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_vmac_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1661
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_vmac_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1660
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_vmac_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1660
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_otp_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1585
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_otp_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1585
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_otp_tokeninfo_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_otp_tokeninfo_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_typed_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1553
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_typed_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1553
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_seqof_external_principal_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1459
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_external_principal_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1457
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_external_principal_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1457
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_external_principal_identifier_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1453
      functionLinenumberEnd: 1453
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_external_principal_identifier_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1453
      functionLinenumberEnd: 1453
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_pachecksum2_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1406
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_pachecksum2_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1405
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_pachecksum2_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_pkinit_krb5_principal_name
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_pkinit_krb5_principal_name
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_supported_kdfs
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1355
      functionLinenumberEnd: 1355
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_kdf_alg_id
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1354
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_supported_kdfs
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_supported_kdfs
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1353
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_kdf_alg_id
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1351
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_kdf_alg_id
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1351
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_seqof_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1337
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1336
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1336
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1334
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1333
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1333
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_seqof_princ_plus_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1091
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_princ_plus_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_princ_plus_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_princ_plus_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_princ_plus_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_fast_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1045
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_fast_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_fast_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_fast_req_padata
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_fast_req_padata
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_fast_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_fast_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1003
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_fast_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1003
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_s4u_principal_present
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 964
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_cred_timestamp_set
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_priv_timestamp_set
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_safe_checksum_only_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_safe_checksum_only_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_saved_safe_body_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_saved_safe_body_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_etype_info2_entry_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_etype_info2_entry_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_etype_info_entry_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_etype_info_entry_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_no_salt
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_salt_present
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptrseqof_cred_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptrseqof_cred_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_cred_info_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_cred_info_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_safe_timestamp_set
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_addresses
        - krb5_free_principal
        - krb5_free_tickets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:490,5'
          Dst:             krb5_free_principal
        - Src:             'asn1_k_encode.c:491,5'
          Dst:             krb5_free_principal
        - Src:             'asn1_k_encode.c:493,5'
          Dst:             krb5_free_addresses
        - Src:             'asn1_k_encode.c:495,5'
          Dst:             krb5_free_tickets
    - functionName:    check_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          206
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - free_kdc_req_body
        - k5_asn1_decode_atype
        - krb5int_copy_data_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:505,11'
          Dst:             k5_asn1_decode_atype
        - Src:             'asn1_k_encode.c:521,15'
          Dst:             krb5int_copy_data_contents
        - Src:             'asn1_k_encode.c:524,13'
          Dst:             free_kdc_req_body
    - functionName:    aux_present_opt_ptr_seqof_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ticket_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ticket_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_kvno
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_gstring_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_gstring_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_realm_of_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_realm_of_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nonempty_enc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_seqof_host_addresses
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_host_addresses
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_host_addresses
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_address_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_address_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_int32_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_int32_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_kerberos_time
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_kerberos_time
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_encode_generaltime
        - ts2tt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:161,18'
          Dst:             ts2tt
        - Src:             'asn1_k_encode.c:165,12'
          Dst:             k5_asn1_encode_generaltime
    - functionName:    decode_kerberos_time
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_decode_generaltime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:173,11'
          Dst:             k5_asn1_decode_generaltime
    - functionName:    check_kerberos_time
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts2tt
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2340
      functionLinenumberEnd: 2341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_krb5_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_encode_bitstring
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:235,5'
          Dst:             store_32_be
        - Src:             'asn1_k_encode.c:239,12'
          Dst:             k5_asn1_encode_bitstring
    - functionName:    decode_krb5_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - k5_asn1_decode_bitstring
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:248,11'
          Dst:             k5_asn1_decode_bitstring
    - functionName:    check_krb5_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          96
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - k5_asn1_encode_atype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:484,12'
          Dst:             k5_asn1_encode_atype
    - functionName:    is_renewable_flag_set
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_enc_kdc_rep_start
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_enc_kdc_rep_start_set
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_seqof_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_pa_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_pa_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_last_req_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_last_req_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_last_req_ent_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_last_req_ent_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_lr_type
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_lr_type
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_asn1_decode_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:332,11'
          Dst:             k5_asn1_decode_int
    - functionName:    encode_lr_type
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_encode_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:324,5'
          Dst:             k5_asn1_encode_int
    - functionName:    aux_present_opt_checksum_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_seqof_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_seqof_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_checksum_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_checksum_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ptr_encryption_key
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_encryption_key
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_encryption_key
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ptr_authdata_elt_type
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ptr_authdata_elt_type
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_auth_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_auth_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_auth_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_authdata_elt_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_authdata_elt_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_krb5_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_address_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_seqno
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_seqno
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_seqno
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_asn1_decode_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:138,11'
          Dst:             k5_asn1_decode_int
    - functionName:    encode_seqno
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_encode_uint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:130,5'
          Dst:             k5_asn1_encode_uint
    - functionName:    aux_present_opt_realm_of_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_oid_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_oid_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_utf8_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_utf8_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_ostring_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_storeptr_ostring_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_loadptr_ostring_data_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nonempty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_uint
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_int32_minus1
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    int32_not_minus1
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aux_present_opt_int32
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_krb5_pa_spake
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1769
      functionLinenumberEnd: 1769
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1769,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_spake
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1768
      functionLinenumberEnd: 1768
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1768,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_spake_factor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1731
      functionLinenumberEnd: 1731
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1731,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_spake_factor
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1730
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1730,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_pac_options
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1718
      functionLinenumberEnd: 1718
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1718,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_pac_options
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1717
      functionLinenumberEnd: 1717
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1717,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_secure_cookie
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1697
      functionLinenumberEnd: 1697
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1697,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_secure_cookie
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1696
      functionLinenumberEnd: 1696
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1696,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_utf8_strings
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1680
      functionLinenumberEnd: 1680
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1680,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_utf8_strings
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1679
      functionLinenumberEnd: 1679
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1679,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_cammac
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1677
      functionLinenumberEnd: 1677
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1677,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_cammac
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1676
      functionLinenumberEnd: 1676
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1676,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_kkdcp_message
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1650
      functionLinenumberEnd: 1650
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1650,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_kkdcp_message
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1649
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1649,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_otp_enc_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1635
      functionLinenumberEnd: 1635
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1635,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_otp_enc_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1634
      functionLinenumberEnd: 1634
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1634,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_otp_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1627
      functionLinenumberEnd: 1627
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1627,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_otp_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1626
      functionLinenumberEnd: 1626
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1626,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_otp_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1600
      functionLinenumberEnd: 1600
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1600,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_otp_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1599
      functionLinenumberEnd: 1599
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1599,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_otp_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1581
      functionLinenumberEnd: 1581
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1581,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_otp_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1580
      functionLinenumberEnd: 1580
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1580,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_typed_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1557
      functionLinenumberEnd: 1557
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1557,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_typed_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1556
      functionLinenumberEnd: 1556
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1556,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_principal_name
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1525,1'
          Dst:             k5_asn1_full_decode
    - functionName:    decode_krb5_td_dh_parameters
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1524
      functionLinenumberEnd: 1524
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1524,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_td_dh_parameters
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1523
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1523,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_td_trusted_certifiers
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1521
      functionLinenumberEnd: 1521
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1521,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_td_trusted_certifiers
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1519
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1519,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_reply_key_pack
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1518
      functionLinenumberEnd: 1518
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1518,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_reply_key_pack
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1517,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_kdc_dh_key_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1516
      functionLinenumberEnd: 1516
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1516,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_kdc_dh_key_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1515
      functionLinenumberEnd: 1515
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1515,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_auth_pack
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1514
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1514,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_auth_pack
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1513
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1513,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_pk_as_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1512
      functionLinenumberEnd: 1512
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1512,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_pk_as_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1511
      functionLinenumberEnd: 1511
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1511,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_pk_as_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1510
      functionLinenumberEnd: 1510
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1510,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_pk_as_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1509
      functionLinenumberEnd: 1509
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1509,1'
          Dst:             k5_asn1_full_encode
    - functionName:    encode_krb5_sp80056a_other_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1395
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1395,1'
          Dst:             k5_asn1_full_encode
    - functionName:    encode_krb5_pkinit_supp_pub_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1394
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1394,1'
          Dst:             k5_asn1_full_encode
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_get_authdata_containee_types
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1313,19'
          Dst:             make_data
        - Src:             'asn1_k_encode.c:1315,11'
          Dst:             k5_asn1_full_decode
    - functionName:    decode_krb5_iakerb_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1302,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_iakerb_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1301
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1301,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_iakerb_header
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1300
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1300,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_iakerb_header
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1299,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_ad_kdcissued
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1298
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1298,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_ad_kdcissued
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1297,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_fast_response
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1295
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1295,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_fast_response
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1294
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1294,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_fx_fast_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1293
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1293,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_fx_fast_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1292
      functionLinenumberEnd: 1292
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1292,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_fast_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1291
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1291,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_fast_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1290
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1290,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_fx_fast_request
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1289
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1289,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_fx_fast_request
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1288
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1288,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_etype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1286
      functionLinenumberEnd: 1286
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1286,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_etype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1285
      functionLinenumberEnd: 1285
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1285,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_pac_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1284
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1284,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_pac_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1283,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_s4u_x509_user
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1282
      functionLinenumberEnd: 1282
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1282,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_s4u_x509_user
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1281
      functionLinenumberEnd: 1281
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1281,1'
          Dst:             k5_asn1_full_encode
    - functionName:    encode_krb5_s4u_userid
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1280
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1280,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_for_user
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1279
      functionLinenumberEnd: 1279
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1279,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_for_user
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1278,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_setpw_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1255
      functionLinenumberEnd: 1276
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1266,11'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_setpw_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1251
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1251,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_sam_response_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1247
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1247,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_sam_response_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1246,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_enc_sam_response_enc_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1245
      functionLinenumberEnd: 1245
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1245,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_sam_response_enc_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1244
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1244,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_sam_challenge_2_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1243,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_sam_challenge_2_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1242
      functionLinenumberEnd: 1242
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1242,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_sam_challenge_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1241
      functionLinenumberEnd: 1241
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1241,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_sam_challenge_2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1240
      functionLinenumberEnd: 1240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1240,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_padata_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1238
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1238,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_padata_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1237,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_pa_enc_ts
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1236
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1236,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_pa_enc_ts
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1235
      functionLinenumberEnd: 1235
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1235,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_enc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1234
      functionLinenumberEnd: 1234
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1234,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1233,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_etype_info2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1232
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1232,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_etype_info2
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1231
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1231,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_etype_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1230
      functionLinenumberEnd: 1230
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1230,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_etype_info
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1229
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1229,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1228
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1228,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1227
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1227,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_error
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1226,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_error
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1225
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1225,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_enc_cred_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1224
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1224,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_cred_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1223
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1223,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1222,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1221
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1221,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1219
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1219,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1218,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_enc_priv_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1217
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1217,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_priv_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1216
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1216,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_priv
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1215
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1215,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_priv
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1214
      functionLinenumberEnd: 1214
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1214,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_safe_with_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          93
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_asn1_full_decode
        - krb5_free_data
        - krb5_free_safe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1194,11'
          Dst:             k5_asn1_full_decode
        - Src:             'asn1_k_encode.c:1198,11'
          Dst:             k5_asn1_full_decode
        - Src:             'asn1_k_encode.c:1200,9'
          Dst:             krb5_free_safe
        - Src:             'asn1_k_encode.c:1201,9'
          Dst:             krb5_free_data
    - functionName:    encode_krb5_safe_with_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1178
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1178,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_safe
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1174
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1174,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_safe
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1173,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1172
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1172,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_kdc_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1171,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_tgs_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1170,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_tgs_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1169
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1169,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_as_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1168,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_as_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1167
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1167,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_ap_rep_enc_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1166
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1166,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_ap_rep_enc_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1165
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1165,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_ap_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1164
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1164,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_ap_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1163
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1163,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_ap_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1162,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_ap_req
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1161
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1161,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_tgs_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1160,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_tgs_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1159
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1159,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_as_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1158,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_as_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1157,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_enc_kdc_rep_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1144,11'
          Dst:             k5_asn1_full_decode
        - Src:             'asn1_k_encode.c:1147,15'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_kdc_rep_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1133,1'
          Dst:             k5_asn1_full_encode
    - functionName:    krb5_decode_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1123
      functionLinenumberEnd: 1124
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_krb5_ticket
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1124,12'
          Dst:             decode_krb5_ticket
    - functionName:    decode_krb5_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1115,1'
          Dst:             k5_asn1_full_decode
    - functionName:    decode_krb5_enc_tkt_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1119,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_enc_tkt_part
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1118,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_encryption_key
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1117
      functionLinenumberEnd: 1117
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1117,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_encryption_key
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1116,1'
          Dst:             k5_asn1_full_encode
    - functionName:    encode_krb5_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1114,1'
          Dst:             k5_asn1_full_encode
    - functionName:    decode_krb5_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1113
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_asn1_full_decode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1113,1'
          Dst:             k5_asn1_full_decode
    - functionName:    encode_krb5_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_k_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_asn1_full_encode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_k_encode.c:1112,1'
          Dst:             k5_asn1_full_encode
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5_cccol_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_assert_locked
        - k5_cc_mutex_unlock
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:591,5'
          Dst:             k5_cc_mutex_assert_locked
        - Src:             'ccbase.c:593,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:603,5'
          Dst:             k5_cc_mutex_assert_locked
        - Src:             'ccbase.c:604,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'ccbase.c:605,5'
          Dst:             k5_cc_mutex_assert_locked
        - Src:             'ccbase.c:606,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'ccbase.c:609,5'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:610,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    k5_cc_mutex_assert_locked
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_cc_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_mutex_unlock
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:540,9'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_cccol_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:564,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'ccbase.c:565,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:566,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'ccbase.c:567,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'ccbase.c:581,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_cc_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_lock
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:519,9'
          Dst:             k5_mutex_lock
    - functionName:    k5_cc_mutex_force_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:551,9'
          Dst:             k5_mutex_unlock
    - functionName:    k5_cc_mutex_assert_unlocked
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    k5_cc_mutex_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_init
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:472,11'
          Dst:             k5_mutex_init
    - functionName:    krb5_cc_support_switch
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_cc_getops
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:463,11'
          Dst:             krb5int_cc_getops
    - functionName:    krb5int_cc_getops
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:267,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:269,13'
          Dst:             strcmp
        - Src:             'ccbase.c:271,13'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:275,5'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:276,29'
          Dst:             strcmp
    - functionName:    read_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          149
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - k5alloc
        - k5calloc
        - krb5_cc_end_seq_get
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_free_tgt_creds
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:380,11'
          Dst:             krb5_cc_start_seq_get
        - Src:             'ccbase.c:386,12'
          Dst:             k5calloc
        - Src:             'ccbase.c:392,16'
          Dst:             k5alloc
        - Src:             'ccbase.c:395,15'
          Dst:             krb5_cc_next_cred
        - Src:             'ccbase.c:404,18'
          Dst:             realloc
        - Src:             'ccbase.c:419,15'
          Dst:             krb5_cc_end_seq_get
        - Src:             'ccbase.c:420,5'
          Dst:             krb5_free_tgt_creds
    - functionName:    krb5_cc_move
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          122
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - k5_nonatomic_replace
        - krb5_cc_destroy
        - krb5_cc_get_principal
        - krb5_free_principal
        - krb5_free_tgt_creds
        - krb5int_trace
        - read_creds
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:432,5'
          Dst:             krb5int_trace
        - Src:             'ccbase.c:434,11'
          Dst:             krb5_cc_get_principal
        - Src:             'ccbase.c:438,11'
          Dst:             read_creds
        - Src:             'ccbase.c:443,15'
          Dst:             k5_nonatomic_replace
        - Src:             'ccbase.c:449,11'
          Dst:             krb5_cc_destroy
        - Src:             'ccbase.c:452,5'
          Dst:             krb5_free_principal
        - Src:             'ccbase.c:453,5'
          Dst:             krb5_free_tgt_creds
    - functionName:    k5_nonatomic_replace
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_cc_initialize
        - krb5_cc_store_cred
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:364,11'
          Dst:             krb5_cc_initialize
        - Src:             'ccbase.c:366,15'
          Dst:             krb5_cc_store_cred
    - functionName:    krb5int_cc_typecursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_cc_typecursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:342,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:345,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_cc_typecursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:326,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:328,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_cc_new_unique
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_cc_getops
        - krb5int_trace
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:301,5'
          Dst:             krb5int_trace
        - Src:             'ccbase.c:302,11'
          Dst:             krb5int_cc_getops
    - functionName:    krb5_cc_dup
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_cc_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          178
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - __ctype_b_loc
        - k5memdup0
        - krb5int_cc_getops
        - strchr
        - strdup
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:213,10'
          Dst:             strchr
        - Src:             'ccbase.c:223,25'
          Dst:             __ctype_b_loc
        - Src:             'ccbase.c:225,15'
          Dst:             strdup
        - Src:             'ccbase.c:232,15'
          Dst:             k5memdup0
        - Src:             'ccbase.c:239,11'
          Dst:             krb5int_cc_getops
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    36
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_register
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:166,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:167,31'
          Dst:             strcmp
        - Src:             'ccbase.c:172,13'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:175,13'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:180,9'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:186,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_cccol_force_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_cc_mutex_force_unlock
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:624,5'
          Dst:             k5_mutex_lock
        - Src:             'ccbase.c:633,5'
          Dst:             k5_cc_mutex_force_unlock
        - Src:             'ccbase.c:634,5'
          Dst:             k5_cc_mutex_force_unlock
        - Src:             'ccbase.c:636,5'
          Dst:             k5_mutex_unlock
        - Src:             'ccbase.c:637,5'
          Dst:             k5_cc_mutex_force_unlock
    - functionName:    krb5int_cc_finalize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_cccol_force_unlock
        - k5_os_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:138,5'
          Dst:             k5_cccol_force_unlock
        - Src:             'ccbase.c:139,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'ccbase.c:140,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'ccbase.c:142,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'ccbase.c:144,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_cc_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_mutex_finish_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:485,11'
          Dst:             k5_mutex_finish_init
    - functionName:    krb5int_cc_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          67
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - k5_cc_mutex_finish_init
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccbase.c:112,11'
          Dst:             k5_cc_mutex_finish_init
        - Src:             'ccbase.c:115,11'
          Dst:             k5_cc_mutex_finish_init
        - Src:             'ccbase.c:118,11'
          Dst:             k5_mutex_finish_init
        - Src:             'ccbase.c:122,11'
          Dst:             k5_cc_mutex_finish_init
    - functionName:    krb5_cc_copy_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccopy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_cc_end_seq_get
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_cc_store_cred
        - krb5_free_cred_contents
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cccopy.c:11,17'
          Dst:             krb5_cc_start_seq_get
        - Src:             'cccopy.c:14,21'
          Dst:             krb5_cc_next_cred
        - Src:             'cccopy.c:15,16'
          Dst:             krb5_cc_store_cred
        - Src:             'cccopy.c:16,9'
          Dst:             krb5_free_cred_contents
        - Src:             'cccopy.c:24,12'
          Dst:             krb5_cc_end_seq_get
        - Src:             'cccopy.c:34,9'
          Dst:             krb5_cc_end_seq_get
    - functionName:    save_first_error
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_save_ctx_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:228,9'
          Dst:             k5_save_ctx_error
    - functionName:    krb5_cccol_have_content
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          152
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - dgettext
        - k5_clear_error
        - k5_restore_ctx_error
        - krb5_cc_close
        - krb5_cc_default_name
        - krb5_cc_get_principal
        - krb5_cccol_cursor_free
        - krb5_cccol_cursor_new
        - krb5_cccol_cursor_next
        - krb5_free_principal
        - krb5_set_error_message
        - krb5_wrap_error_message
        - save_first_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:242,11'
          Dst:             krb5_cccol_cursor_new
        - Src:             'cccursor.c:243,5'
          Dst:             save_first_error
        - Src:             'cccursor.c:248,15'
          Dst:             krb5_cccol_cursor_next
        - Src:             'cccursor.c:249,9'
          Dst:             save_first_error
        - Src:             'cccursor.c:253,15'
          Dst:             krb5_cc_get_principal
        - Src:             'cccursor.c:254,9'
          Dst:             save_first_error
        - Src:             'cccursor.c:257,9'
          Dst:             krb5_free_principal
        - Src:             'cccursor.c:258,9'
          Dst:             krb5_cc_close
        - Src:             'cccursor.c:260,5'
          Dst:             krb5_cccol_cursor_free
        - Src:             'cccursor.c:262,9'
          Dst:             k5_clear_error
        - Src:             'cccursor.c:269,15'
          Dst:             k5_restore_ctx_error
        - Src:             'cccursor.c:271,20'
          Dst:             dgettext
        - Src:             'cccursor.c:270,9'
          Dst:             krb5_wrap_error_message
        - Src:             'cccursor.c:274,19'
          Dst:             krb5_cc_default_name
        - Src:             'cccursor.c:277,23'
          Dst:             dgettext
        - Src:             'cccursor.c:276,13'
          Dst:             krb5_set_error_message
    - functionName:    krb5_cccol_cursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          138
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - krb5_cccol_cursor_free
        - krb5int_cc_typecursor_new
        - krb5int_cc_typecursor_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:60,11'
          Dst:             krb5int_cc_typecursor_new
        - Src:             'cccursor.c:66,15'
          Dst:             krb5int_cc_typecursor_next
        - Src:             'cccursor.c:77,9'
          Dst:             krb5_cccol_cursor_free
    - functionName:    krb5_cccol_cursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          157
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - krb5int_cc_typecursor_next
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:112,19'
          Dst:             krb5int_cc_typecursor_next
    - functionName:    krb5_cccol_cursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_cc_typecursor_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:138,9'
          Dst:             krb5int_cc_typecursor_free
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_caches
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - krb5_cc_close
        - krb5_cc_get_principal
        - krb5_cccol_cursor_free
        - krb5_cccol_cursor_new
        - krb5_cccol_cursor_next
        - krb5_free_principal
        - krb5_principal_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:157,11'
          Dst:             krb5_cccol_cursor_new
        - Src:             'cccursor.c:161,19'
          Dst:             krb5_cccol_cursor_next
        - Src:             'cccursor.c:163,15'
          Dst:             krb5_cc_get_principal
        - Src:             'cccursor.c:165,18'
          Dst:             krb5_principal_compare
        - Src:             'cccursor.c:166,13'
          Dst:             krb5_free_principal
        - Src:             'cccursor.c:170,9'
          Dst:             krb5_cc_close
        - Src:             'cccursor.c:172,5'
          Dst:             krb5_cccol_cursor_free
    - functionName:    krb5_cc_cache_match
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cccursor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          156
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - dgettext
        - free_canonprinc
        - k5_canonprinc
        - krb5_free_unparsed_name
        - krb5_set_error_message
        - krb5_unparse_name
        - krb5int_trace
        - match_caches
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cccursor.c:195,19'
          Dst:             k5_canonprinc
        - Src:             'cccursor.c:197,15'
          Dst:             match_caches
        - Src:             'cccursor.c:201,5'
          Dst:             free_canonprinc
        - Src:             'cccursor.c:205,13'
          Dst:             krb5_unparse_name
        - Src:             'cccursor.c:207,23'
          Dst:             dgettext
        - Src:             'cccursor.c:206,13'
          Dst:             krb5_set_error_message
        - Src:             'cccursor.c:209,13'
          Dst:             krb5_free_unparsed_name
        - Src:             'cccursor.c:213,5'
          Dst:             krb5int_trace
    - functionName:    krb5int_cc_default
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccdefault.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_cc_default
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefault.c:96,12'
          Dst:             krb5_cc_default
    - functionName:    krb5_cc_default
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccdefault.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_cc_default_name
        - krb5_cc_resolve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefault.c:48,20'
          Dst:             krb5_cc_default_name
        - Src:             'ccdefault.c:56,12'
          Dst:             krb5_cc_resolve
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    free_handles
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_ccselect_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_handles
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect.c:202,5'
          Dst:             free_handles
    - functionName:    load_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         38
      ICount:          234
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - ccselect_hostname_initvt
        - ccselect_k5identity_initvt
        - ccselect_realm_initvt
        - free_handles
        - k5_plugin_free_modules
        - k5_plugin_load_all
        - k5_plugin_register
        - k5alloc
        - k5calloc
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect.c:63,11'
          Dst:             k5_plugin_register
        - Src:             'ccselect.c:63,11'
          Dst:             ccselect_k5identity_initvt
        - Src:             'ccselect.c:69,11'
          Dst:             k5_plugin_register
        - Src:             'ccselect.c:69,11'
          Dst:             ccselect_realm_initvt
        - Src:             'ccselect.c:74,11'
          Dst:             k5_plugin_register
        - Src:             'ccselect.c:74,11'
          Dst:             ccselect_hostname_initvt
        - Src:             'ccselect.c:79,11'
          Dst:             k5_plugin_load_all
        - Src:             'ccselect.c:85,12'
          Dst:             k5calloc
        - Src:             'ccselect.c:92,18'
          Dst:             k5alloc
        - Src:             'ccselect.c:97,13'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:104,13'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:118,5'
          Dst:             k5_plugin_free_modules
        - Src:             'ccselect.c:119,5'
          Dst:             free_handles
    - functionName:    krb5_cc_select
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          352
      EdgeCount:       86
      CyclomaticComplexity: 22
      functionsReached:
        - krb5_copy_principal
        - krb5_free_host_realm
        - krb5_free_principal
        - krb5_get_fallback_host_realm
        - krb5_is_referral_realm
        - krb5_set_principal_realm
        - krb5int_trace
        - load_modules
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect.c:139,15'
          Dst:             load_modules
        - Src:             'ccselect.c:146,9'
          Dst:             krb5_is_referral_realm
        - Src:             'ccselect.c:148,15'
          Dst:             krb5_get_fallback_host_realm
        - Src:             'ccselect.c:155,19'
          Dst:             krb5_copy_principal
        - Src:             'ccselect.c:158,19'
          Dst:             krb5_set_principal_realm
        - Src:             'ccselect.c:174,17'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:180,17'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:184,17'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:190,5'
          Dst:             krb5int_trace
        - Src:             'ccselect.c:194,5'
          Dst:             krb5_free_principal
        - Src:             'ccselect.c:195,5'
          Dst:             krb5_free_host_realm
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    hostname_choose
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_hostname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          344
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - __ctype_b_loc
        - data_eq
        - k5memdup0
        - krb5_cc_close
        - krb5_cc_get_principal
        - krb5_cccol_cursor_free
        - krb5_cccol_cursor_new
        - krb5_cccol_cursor_next
        - krb5_free_principal
        - make_data
        - memchr
        - toupper
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_hostname.c:74,12'
          Dst:             k5memdup0
        - Src:             'ccselect_hostname.c:78,13'
          Dst:             __ctype_b_loc
        - Src:             'ccselect_hostname.c:79,18'
          Dst:             toupper
        - Src:             'ccselect_hostname.c:84,11'
          Dst:             krb5_cccol_cursor_new
        - Src:             'ccselect_hostname.c:88,16'
          Dst:             krb5_cccol_cursor_next
        - Src:             'ccselect_hostname.c:91,15'
          Dst:             krb5_cc_get_principal
        - Src:             'ccselect_hostname.c:93,13'
          Dst:             krb5_cc_close
        - Src:             'ccselect_hostname.c:98,18'
          Dst:             make_data
        - Src:             'ccselect_hostname.c:101,17'
          Dst:             data_eq
        - Src:             'ccselect_hostname.c:108,17'
          Dst:             memchr
        - Src:             'ccselect_hostname.c:111,22'
          Dst:             make_data
        - Src:             'ccselect_hostname.c:115,13'
          Dst:             krb5_cc_close
        - Src:             'ccselect_hostname.c:116,9'
          Dst:             krb5_free_principal
        - Src:             'ccselect_hostname.c:90,16'
          Dst:             krb5_cccol_cursor_next
        - Src:             'ccselect_hostname.c:119,5'
          Dst:             krb5_cccol_cursor_free
    - functionName:    toupper
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hostname_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_hostname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccselect_hostname_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_hostname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    fnmatch_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          109
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - fnmatch
        - k5memdup0
        - tolower
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_k5identity.c:53,11'
          Dst:             k5memdup0
        - Src:             'ccselect_k5identity.c:59,17'
          Dst:             __ctype_b_loc
        - Src:             'ccselect_k5identity.c:60,22'
          Dst:             tolower
        - Src:             'ccselect_k5identity.c:64,11'
          Dst:             fnmatch
    - functionName:    tolower
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fnmatch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_constraint
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          124
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - fnmatch_data
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_k5identity.c:74,9'
          Dst:             strcmp
        - Src:             'ccselect_k5identity.c:75,16'
          Dst:             fnmatch_data
        - Src:             'ccselect_k5identity.c:76,16'
          Dst:             strcmp
        - Src:             'ccselect_k5identity.c:78,17'
          Dst:             fnmatch_data
        - Src:             'ccselect_k5identity.c:79,16'
          Dst:             strcmp
        - Src:             'ccselect_k5identity.c:81,17'
          Dst:             fnmatch_data
    - functionName:    parse_line
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          149
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - check_constraint
        - krb5_parse_name
        - strchr
        - strcspn
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_k5identity.c:102,20'
          Dst:             strspn
        - Src:             'ccselect_k5identity.c:105,25'
          Dst:             strcspn
        - Src:             'ccselect_k5identity.c:110,25'
          Dst:             strspn
        - Src:             'ccselect_k5identity.c:112,29'
          Dst:             strcspn
        - Src:             'ccselect_k5identity.c:115,15'
          Dst:             strchr
        - Src:             'ccselect_k5identity.c:119,14'
          Dst:             check_constraint
        - Src:             'ccselect_k5identity.c:121,29'
          Dst:             strspn
        - Src:             'ccselect_k5identity.c:125,13'
          Dst:             krb5_parse_name
    - functionName:    strspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_homedir
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - geteuid
        - getpwuid_r
        - secure_getenv
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_k5identity.c:138,19'
          Dst:             secure_getenv
        - Src:             'ccselect_k5identity.c:141,13'
          Dst:             geteuid
        - Src:             'ccselect_k5identity.c:141,13'
          Dst:             getpwuid_r
        - Src:             'ccselect_k5identity.c:146,12'
          Dst:             strdup
    - functionName:    geteuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5identity_choose
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          144
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - fclose
        - fgets
        - fopen
        - get_homedir
        - k5_path_join
        - krb5_cc_cache_match
        - krb5_free_principal
        - parse_line
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_k5identity.c:164,15'
          Dst:             get_homedir
        - Src:             'ccselect_k5identity.c:167,11'
          Dst:             k5_path_join
        - Src:             'ccselect_k5identity.c:171,10'
          Dst:             fopen
        - Src:             'ccselect_k5identity.c:177,12'
          Dst:             fgets
        - Src:             'ccselect_k5identity.c:178,13'
          Dst:             parse_line
        - Src:             'ccselect_k5identity.c:181,5'
          Dst:             fclose
        - Src:             'ccselect_k5identity.c:187,11'
          Dst:             krb5_cc_cache_match
        - Src:             'ccselect_k5identity.c:191,9'
          Dst:             krb5_free_principal
    - functionName:    k5identity_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccselect_k5identity_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_k5identity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    realm_choose
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_realm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          153
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - data_eq
        - krb5_cc_close
        - krb5_cc_get_principal
        - krb5_cccol_cursor_free
        - krb5_cccol_cursor_new
        - krb5_cccol_cursor_next
        - krb5_free_principal
        - krb5_is_referral_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccselect_realm.c:53,9'
          Dst:             krb5_is_referral_realm
        - Src:             'ccselect_realm.c:58,11'
          Dst:             krb5_cccol_cursor_new
        - Src:             'ccselect_realm.c:61,19'
          Dst:             krb5_cccol_cursor_next
        - Src:             'ccselect_realm.c:63,15'
          Dst:             krb5_cc_get_principal
        - Src:             'ccselect_realm.c:65,17'
          Dst:             data_eq
        - Src:             'ccselect_realm.c:67,13'
          Dst:             krb5_free_principal
        - Src:             'ccselect_realm.c:69,9'
          Dst:             krb5_cc_close
        - Src:             'ccselect_realm.c:71,5'
          Dst:             krb5_cccol_cursor_free
    - functionName:    realm_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_realm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccselect_realm_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccselect_realm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_cursor
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          189
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - make_cache
        - primary_pathname
        - read_primary_file
        - split_path
        - subsidiary_residual
        - verify_dir
        - write_primary_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:342,15'
          Dst:             split_path
        - Src:             'cc_dir.c:346,15'
          Dst:             verify_dir
        - Src:             'cc_dir.c:353,15'
          Dst:             verify_dir
        - Src:             'cc_dir.c:357,15'
          Dst:             primary_pathname
        - Src:             'cc_dir.c:361,15'
          Dst:             read_primary_file
        - Src:             'cc_dir.c:364,19'
          Dst:             write_primary_file
        - Src:             'cc_dir.c:367,19'
          Dst:             subsidiary_residual
        - Src:             'cc_dir.c:377,11'
          Dst:             make_cache
    - functionName:    dcc_gen_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          142
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - asprintf
        - dgettext
        - get_context_default_dir
        - k5_path_join
        - krb5_set_error_message
        - krb5int_fcc_new_unique
        - make_cache
        - verify_dir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:395,11'
          Dst:             get_context_default_dir
        - Src:             'cc_dir.c:400,19'
          Dst:             dgettext
        - Src:             'cc_dir.c:399,9'
          Dst:             krb5_set_error_message
        - Src:             'cc_dir.c:404,11'
          Dst:             verify_dir
        - Src:             'cc_dir.c:407,11'
          Dst:             k5_path_join
        - Src:             'cc_dir.c:410,11'
          Dst:             krb5int_fcc_new_unique
        - Src:             'cc_dir.c:413,9'
          Dst:             asprintf
        - Src:             'cc_dir.c:417,11'
          Dst:             make_cache
    - functionName:    dcc_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_store
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_retrieve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_get_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_get_first
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_get_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_end_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_remove_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_set_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_get_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_ptcursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          178
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - closedir
        - get_context_default_dir
        - get_context_subsidiary_file
        - krb5_clear_error_message
        - make_cursor
        - opendir
        - primary_pathname
        - read_primary_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:590,11'
          Dst:             get_context_subsidiary_file
        - Src:             'cc_dir.c:594,15'
          Dst:             make_cursor
        - Src:             'cc_dir.c:601,11'
          Dst:             get_context_default_dir
        - Src:             'cc_dir.c:604,11'
          Dst:             opendir
        - Src:             'cc_dir.c:609,11'
          Dst:             primary_pathname
        - Src:             'cc_dir.c:612,11'
          Dst:             read_primary_file
        - Src:             'cc_dir.c:614,9'
          Dst:             krb5_clear_error_message
        - Src:             'cc_dir.c:616,11'
          Dst:             make_cursor
        - Src:             'cc_dir.c:627,9'
          Dst:             closedir
        - Src:             'cc_dir.c:630,16'
          Dst:             make_cursor
    - functionName:    dcc_ptcursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - closedir
        - dcc_resolve
        - filename_is_cache
        - readdir
        - stat
        - strcmp
        - subsidiary_residual
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:649,38'
          Dst:             stat
        - Src:             'cc_dir.c:650,20'
          Dst:             dcc_resolve
        - Src:             'cc_dir.c:658,19'
          Dst:             readdir
        - Src:             'cc_dir.c:659,14'
          Dst:             filename_is_cache
        - Src:             'cc_dir.c:661,15'
          Dst:             subsidiary_residual
        - Src:             'cc_dir.c:664,38'
          Dst:             strcmp
        - Src:             'cc_dir.c:668,15'
          Dst:             dcc_resolve
        - Src:             'cc_dir.c:674,5'
          Dst:             closedir
    - functionName:    dcc_ptcursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - closedir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:685,9'
          Dst:             closedir
    - functionName:    dcc_replace
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dcc_switch_to
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - primary_pathname
        - split_path
        - write_primary_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:726,11'
          Dst:             split_path
        - Src:             'cc_dir.c:730,11'
          Dst:             primary_pathname
        - Src:             'cc_dir.c:734,11'
          Dst:             write_primary_file
    - functionName:    split_path
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dgettext
        - filename_is_cache
        - k5_path_split
        - krb5_set_error_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:115,11'
          Dst:             k5_path_split
        - Src:             'cc_dir.c:122,19'
          Dst:             dgettext
        - Src:             'cc_dir.c:121,9'
          Dst:             krb5_set_error_message
        - Src:             'cc_dir.c:125,10'
          Dst:             filename_is_cache
        - Src:             'cc_dir.c:128,19'
          Dst:             dgettext
        - Src:             'cc_dir.c:127,9'
          Dst:             krb5_set_error_message
    - functionName:    primary_pathname
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_path_join
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:83,12'
          Dst:             k5_path_join
    - functionName:    write_primary_file
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          130
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - asprintf
        - chmod
        - close
        - fclose
        - fdopen
        - fprintf
        - mkstemp
        - rename
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:187,9'
          Dst:             asprintf
        - Src:             'cc_dir.c:189,10'
          Dst:             mkstemp
        - Src:             'cc_dir.c:193,5'
          Dst:             chmod
        - Src:             'cc_dir.c:195,10'
          Dst:             fdopen
        - Src:             'cc_dir.c:199,9'
          Dst:             fprintf
        - Src:             'cc_dir.c:201,14'
          Dst:             fclose
        - Src:             'cc_dir.c:206,9'
          Dst:             rename
        - Src:             'cc_dir.c:212,9'
          Dst:             close
        - Src:             'cc_dir.c:214,9'
          Dst:             fclose
    - functionName:    mkstemp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chmod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fdopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    filename_is_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strncmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:76,13'
          Dst:             strncmp
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subsidiary_residual
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - asprintf
        - k5_path_join
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:95,11'
          Dst:             k5_path_join
        - Src:             'cc_dir.c:98,11'
          Dst:             asprintf
    - functionName:    get_context_subsidiary_file
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_cc_default_name
        - strdup
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:279,15'
          Dst:             krb5_cc_default_name
        - Src:             'cc_dir.c:280,28'
          Dst:             strncmp
        - Src:             'cc_dir.c:282,16'
          Dst:             strdup
    - functionName:    get_context_default_dir
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_cc_default_name
        - strdup
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:254,15'
          Dst:             krb5_cc_default_name
        - Src:             'cc_dir.c:257,9'
          Dst:             strncmp
        - Src:             'cc_dir.c:260,15'
          Dst:             strdup
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_primary_file
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          111
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - dgettext
        - fclose
        - fgets
        - filename_is_cache
        - fopen
        - krb5_set_error_message
        - strchr
        - strlen
        - subsidiary_residual
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:156,10'
          Dst:             fopen
        - Src:             'cc_dir.c:159,11'
          Dst:             fgets
        - Src:             'cc_dir.c:160,5'
          Dst:             fclose
        - Src:             'cc_dir.c:163,11'
          Dst:             strlen
        - Src:             'cc_dir.c:167,34'
          Dst:             filename_is_cache
        - Src:             'cc_dir.c:168,9'
          Dst:             strchr
        - Src:             'cc_dir.c:168,29'
          Dst:             strchr
        - Src:             'cc_dir.c:169,44'
          Dst:             dgettext
        - Src:             'cc_dir.c:169,9'
          Dst:             krb5_set_error_message
        - Src:             'cc_dir.c:175,12'
          Dst:             subsidiary_residual
    - functionName:    verify_dir
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - dgettext
        - krb5_set_error_message
        - mkdir
        - stat
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:225,9'
          Dst:             stat
        - Src:             'cc_dir.c:226,13'
          Dst:             __errno_location
        - Src:             'cc_dir.c:226,32'
          Dst:             mkdir
        - Src:             'cc_dir.c:229,19'
          Dst:             dgettext
        - Src:             'cc_dir.c:228,9'
          Dst:             krb5_set_error_message
        - Src:             'cc_dir.c:235,19'
          Dst:             dgettext
        - Src:             'cc_dir.c:234,9'
          Dst:             krb5_set_error_message
    - functionName:    make_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_dir.c:312,21'
          Dst:             strdup
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    130
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    delete_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1134
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          290
      EdgeCount:       49
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - close
        - data_eq_string
        - ftell
        - interpret_errno
        - k5_buf_free
        - k5_buf_init_dynamic_zap
        - k5_buf_status
        - k5_marshal_cred
        - k5alloc
        - lseek
        - memcmp
        - open
        - read
        - write
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1046,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'cc_file.c:1047,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'cc_file.c:1050,5'
          Dst:             k5_marshal_cred
        - Src:             'cc_file.c:1051,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:1065,9'
          Dst:             data_eq_string
        - Src:             'cc_file.c:1068,5'
          Dst:             k5_marshal_cred
        - Src:             'cc_file.c:1069,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:1079,10'
          Dst:             open
        - Src:             'cc_file.c:1081,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1081,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1085,20'
          Dst:             ftell
        - Src:             'cc_file.c:1087,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1087,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1093,9'
          Dst:             lseek
        - Src:             'cc_file.c:1094,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1094,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1097,15'
          Dst:             k5alloc
        - Src:             'cc_file.c:1100,13'
          Dst:             read
        - Src:             'cc_file.c:1102,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1102,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1114,9'
          Dst:             memcmp
        - Src:             'cc_file.c:1118,9'
          Dst:             lseek
        - Src:             'cc_file.c:1119,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1119,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1122,13'
          Dst:             write
        - Src:             'cc_file.c:1124,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1124,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1130,9'
          Dst:             close
        - Src:             'cc_file.c:1131,5'
          Dst:             zapfree
        - Src:             'cc_file.c:1132,5'
          Dst:             k5_buf_free
        - Src:             'cc_file.c:1133,5'
          Dst:             k5_buf_free
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    interpret_errno
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1343
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          77
      EdgeCount:       36
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    24
      BranchProfiles:
        - Branch String:   'cc_file.c:1346,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ftell
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cred_removed
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          213
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - load_bytes
        - load_data
        - load_principal
        - read32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:254,11'
          Dst:             load_principal
        - Src:             'cc_file.c:257,11'
          Dst:             load_principal
        - Src:             'cc_file.c:262,11'
          Dst:             load_bytes
        - Src:             'cc_file.c:265,11'
          Dst:             load_data
        - Src:             'cc_file.c:270,11'
          Dst:             load_bytes
        - Src:             'cc_file.c:276,15'
          Dst:             read32
        - Src:             'cc_file.c:280,19'
          Dst:             load_bytes
        - Src:             'cc_file.c:283,19'
          Dst:             load_data
        - Src:             'cc_file.c:290,11'
          Dst:             load_data
        - Src:             'cc_file.c:293,12'
          Dst:             load_data
    - functionName:    load_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          115
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - load_bytes
        - load_data
        - read32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:226,15'
          Dst:             load_bytes
        - Src:             'cc_file.c:230,11'
          Dst:             read32
        - Src:             'cc_file.c:237,15'
          Dst:             load_data
    - functionName:    load_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - read_bytes
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:195,11'
          Dst:             k5_buf_get_space
        - Src:             'cc_file.c:196,44'
          Dst:             read_bytes
    - functionName:    load_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - load_bytes
        - read32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:208,11'
          Dst:             read32
        - Src:             'cc_file.c:213,12'
          Dst:             load_bytes
    - functionName:    read32
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_add_len
        - load_32_be
        - load_32_n
        - read_bytes
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:165,11'
          Dst:             read_bytes
        - Src:             'cc_file.c:169,9'
          Dst:             k5_buf_add_len
        - Src:             'cc_file.c:170,28'
          Dst:             load_32_n
        - Src:             'cc_file.c:170,47'
          Dst:             load_32_be
    - functionName:    read_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - ferror
        - fread
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:150,13'
          Dst:             fread
        - Src:             'cc_file.c:152,16'
          Dst:             ferror
        - Src:             'cc_file.c:152,29'
          Dst:             __errno_location
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ferror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_size
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - fileno
        - fstat
        - interpret_errno
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:134,15'
          Dst:             fileno
        - Src:             'cc_file.c:134,9'
          Dst:             fstat
        - Src:             'cc_file.c:135,41'
          Dst:             __errno_location
        - Src:             'cc_file.c:135,16'
          Dst:             interpret_errno
    - functionName:    fileno
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - get_size
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5_buf_status
        - k5_unmarshal_princ
        - load_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:305,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'cc_file.c:308,11'
          Dst:             get_size
        - Src:             'cc_file.c:311,11'
          Dst:             load_principal
        - Src:             'cc_file.c:314,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:319,11'
          Dst:             k5_unmarshal_princ
        - Src:             'cc_file.c:322,5'
          Dst:             k5_buf_free
    - functionName:    load_16_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read16
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - load_16_be
        - load_16_n
        - read_bytes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:182,11'
          Dst:             read_bytes
        - Src:             'cc_file.c:185,28'
          Dst:             load_16_n
        - Src:             'cc_file.c:185,47'
          Dst:             load_16_be
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close_cache_file
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - fclose
        - fileno
        - interpret_errno
        - krb5_unlock_file
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:374,37'
          Dst:             fileno
        - Src:             'cc_file.c:374,11'
          Dst:             krb5_unlock_file
        - Src:             'cc_file.c:375,10'
          Dst:             fclose
        - Src:             'cc_file.c:378,42'
          Dst:             __errno_location
        - Src:             'cc_file.c:378,17'
          Dst:             interpret_errno
    - functionName:    read_header
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          265
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - fseek
        - load_16_be
        - read16
        - read32
        - read_bytes
      functionUses:    3
      BranchProfiles:
        - Branch String:   'cc_file.c:415,9'
          Branch Sides:    []
      Callsites:
        - Src:             'cc_file.c:396,11'
          Dst:             read_bytes
        - Src:             'cc_file.c:399,15'
          Dst:             load_16_be
        - Src:             'cc_file.c:408,9'
          Dst:             read16
        - Src:             'cc_file.c:411,31'
          Dst:             read16
        - Src:             'cc_file.c:412,13'
          Dst:             read16
        - Src:             'cc_file.c:418,17'
          Dst:             read32
        - Src:             'cc_file.c:419,17'
          Dst:             read32
        - Src:             'cc_file.c:433,25'
          Dst:             fseek
    - functionName:    fseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open_cache_file
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          107
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - close
        - fcntl
        - fdopen
        - interpret_errno
        - krb5_lock_file
        - krb5_unlock_file
        - open
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:342,10'
          Dst:             open
        - Src:             'cc_file.c:344,41'
          Dst:             __errno_location
        - Src:             'cc_file.c:344,16'
          Dst:             interpret_errno
        - Src:             'cc_file.c:345,5'
          Dst:             fcntl
        - Src:             'cc_file.c:348,11'
          Dst:             krb5_lock_file
        - Src:             'cc_file.c:350,15'
          Dst:             close
        - Src:             'cc_file.c:354,10'
          Dst:             fdopen
        - Src:             'cc_file.c:356,15'
          Dst:             krb5_unlock_file
        - Src:             'cc_file.c:357,15'
          Dst:             close
    - functionName:    fcntl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5_buf_add_uint32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:144,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:147,9'
          Dst:             store_32_be
    - functionName:    k5_buf_add_uint16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_be
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:126,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:129,9'
          Dst:             store_16_be
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    marshal_header
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_add_uint16_be
        - k5_buf_add_uint32_be
        - k5_marshal_princ
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:450,5'
          Dst:             k5_buf_add_uint16_be
        - Src:             'cc_file.c:456,9'
          Dst:             k5_buf_add_uint16_be
        - Src:             'cc_file.c:459,13'
          Dst:             k5_buf_add_uint16_be
        - Src:             'cc_file.c:460,13'
          Dst:             k5_buf_add_uint16_be
        - Src:             'cc_file.c:461,13'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_file.c:462,13'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_file.c:465,5'
          Dst:             k5_marshal_princ
    - functionName:    krb5_get_notification_message
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1458
      functionLinenumberEnd: 1459
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1270,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    fcc_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1261,5'
          Dst:             k5_cc_mutex_lock
    - functionName:    fcc_replace
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1338
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          203
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - asprintf
        - close
        - interpret_errno
        - k5_buf_free
        - k5_buf_init_dynamic_zap
        - k5_buf_status
        - k5_marshal_cred
        - marshal_header
        - mkstemp
        - rename
        - unlink
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1286,9'
          Dst:             asprintf
        - Src:             'cc_file.c:1288,10'
          Dst:             mkstemp
        - Src:             'cc_file.c:1293,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'cc_file.c:1294,5'
          Dst:             marshal_header
        - Src:             'cc_file.c:1296,9'
          Dst:             k5_marshal_cred
        - Src:             'cc_file.c:1297,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:1301,16'
          Dst:             write
        - Src:             'cc_file.c:1308,10'
          Dst:             close
        - Src:             'cc_file.c:1313,10'
          Dst:             rename
        - Src:             'cc_file.c:1327,5'
          Dst:             k5_buf_free
        - Src:             'cc_file.c:1329,9'
          Dst:             close
        - Src:             'cc_file.c:1331,9'
          Dst:             unlink
        - Src:             'cc_file.c:1336,36'
          Dst:             __errno_location
        - Src:             'cc_file.c:1336,11'
          Dst:             interpret_errno
    - functionName:    unlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_ptcursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_ptcursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1208
      functionLinenumberEnd: 1241
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_cc_default_name
        - krb5_cc_resolve
        - set_errmsg_filename
        - stat
        - strchr
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1220,15'
          Dst:             krb5_cc_default_name
        - Src:             'cc_file.c:1225,9'
          Dst:             strncmp
        - Src:             'cc_file.c:1227,14'
          Dst:             strchr
        - Src:             'cc_file.c:1233,9'
          Dst:             stat
        - Src:             'cc_file.c:1236,11'
          Dst:             krb5_cc_resolve
        - Src:             'cc_file.c:1238,16'
          Dst:             set_errmsg_filename
    - functionName:    set_errmsg_filename
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - error_message
        - krb5_set_error_message
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:122,50'
          Dst:             error_message
        - Src:             'cc_file.c:122,5'
          Dst:             krb5_set_error_message
    - functionName:    fcc_ptcursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1182
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 947
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - free_fccdata
        - k5_cc_mutex_init
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:672,22'
          Dst:             strdup
        - Src:             'cc_file.c:677,11'
          Dst:             k5_cc_mutex_init
        - Src:             'cc_file.c:686,9'
          Dst:             free_fccdata
    - functionName:    fcc_generate_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_fcc_new_unique
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:940,11'
          Dst:             snprintf
        - Src:             'cc_file.c:941,12'
          Dst:             krb5int_fcc_new_unique
    - functionName:    fcc_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          186
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - close
        - fchmod
        - fcntl
        - interpret_errno
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5_buf_status
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_change_cache
        - krb5_lock_file
        - krb5_unlock_file
        - marshal_header
        - open
        - set_errmsg_filename
        - unlink
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:479,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:481,5'
          Dst:             unlink
        - Src:             'cc_file.c:483,10'
          Dst:             open
        - Src:             'cc_file.c:485,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:485,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:488,5'
          Dst:             fcntl
        - Src:             'cc_file.c:492,10'
          Dst:             fchmod
        - Src:             'cc_file.c:497,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:497,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:502,11'
          Dst:             krb5_lock_file
        - Src:             'cc_file.c:508,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'cc_file.c:509,5'
          Dst:             marshal_header
        - Src:             'cc_file.c:510,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:515,16'
          Dst:             write
        - Src:             'cc_file.c:517,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:517,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:522,5'
          Dst:             k5_buf_free
        - Src:             'cc_file.c:524,9'
          Dst:             krb5_unlock_file
        - Src:             'cc_file.c:526,9'
          Dst:             close
        - Src:             'cc_file.c:527,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:528,5'
          Dst:             krb5_change_cache
        - Src:             'cc_file.c:529,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          190
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - close
        - fcntl
        - free_fccdata
        - fstat
        - interpret_errno
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_change_cache
        - open
        - set_errmsg_filename
        - unlink
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:563,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:565,10'
          Dst:             open
        - Src:             'cc_file.c:567,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:567,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:570,5'
          Dst:             fcntl
        - Src:             'cc_file.c:610,10'
          Dst:             unlink
        - Src:             'cc_file.c:612,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:612,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:613,15'
          Dst:             close
        - Src:             'cc_file.c:617,10'
          Dst:             fstat
        - Src:             'cc_file.c:619,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:619,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:620,15'
          Dst:             close
        - Src:             'cc_file.c:628,13'
          Dst:             write
        - Src:             'cc_file.c:629,44'
          Dst:             __errno_location
        - Src:             'cc_file.c:629,19'
          Dst:             interpret_errno
        - Src:             'cc_file.c:630,19'
          Dst:             close
        - Src:             'cc_file.c:636,9'
          Dst:             write
        - Src:             'cc_file.c:637,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:637,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:638,15'
          Dst:             close
        - Src:             'cc_file.c:642,10'
          Dst:             close
        - Src:             'cc_file.c:645,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:645,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:650,11'
          Dst:             set_errmsg_filename
        - Src:             'cc_file.c:651,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:652,5'
          Dst:             free_fccdata
        - Src:             'cc_file.c:655,5'
          Dst:             krb5_change_cache
    - functionName:    fcc_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_fccdata
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:546,5'
          Dst:             free_fccdata
    - functionName:    fcc_store
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          145
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - close_cache_file
        - fileno
        - interpret_errno
        - k5_buf_free
        - k5_buf_init_dynamic_zap
        - k5_buf_status
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_marshal_cred
        - krb5_change_cache
        - open_cache_file
        - read_header
        - set_errmsg_filename
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:997,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:1000,11'
          Dst:             open_cache_file
        - Src:             'cc_file.c:1003,11'
          Dst:             read_header
        - Src:             'cc_file.c:1008,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'cc_file.c:1009,5'
          Dst:             k5_marshal_cred
        - Src:             'cc_file.c:1010,11'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:1013,22'
          Dst:             fileno
        - Src:             'cc_file.c:1013,16'
          Dst:             write
        - Src:             'cc_file.c:1015,40'
          Dst:             __errno_location
        - Src:             'cc_file.c:1015,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:1019,5'
          Dst:             krb5_change_cache
        - Src:             'cc_file.c:1022,5'
          Dst:             k5_buf_free
        - Src:             'cc_file.c:1023,12'
          Dst:             close_cache_file
        - Src:             'cc_file.c:1024,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:1025,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_retrieve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 979
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_retrieve_cred_default
        - set_errmsg_filename
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:982,11'
          Dst:             k5_cc_retrieve_cred_default
        - Src:             'cc_file.c:983,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_get_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - close_cache_file
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - open_cache_file
        - read_header
        - read_principal
        - set_errmsg_filename
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:960,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:961,11'
          Dst:             open_cache_file
        - Src:             'cc_file.c:964,11'
          Dst:             read_header
        - Src:             'cc_file.c:967,11'
          Dst:             read_principal
        - Src:             'cc_file.c:970,11'
          Dst:             close_cache_file
        - Src:             'cc_file.c:971,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:972,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          122
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - close_cache_file
        - fileno
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_free_principal
        - krb5_unlock_file
        - open_cache_file
        - read_header
        - read_principal
        - set_errmsg_filename
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:711,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:720,11'
          Dst:             open_cache_file
        - Src:             'cc_file.c:723,11'
          Dst:             read_header
        - Src:             'cc_file.c:728,11'
          Dst:             read_principal
        - Src:             'cc_file.c:733,37'
          Dst:             fileno
        - Src:             'cc_file.c:733,11'
          Dst:             krb5_unlock_file
        - Src:             'cc_file.c:741,11'
          Dst:             close_cache_file
        - Src:             'cc_file.c:743,5'
          Dst:             krb5_free_principal
        - Src:             'cc_file.c:744,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:745,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_next_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          163
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - cred_removed
        - fileno
        - get_size
        - k5_buf_free
        - k5_buf_init_dynamic_zap
        - k5_buf_status
        - k5_buf_truncate
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_unmarshal_cred
        - krb5_free_cred_contents
        - krb5_lock_file
        - krb5_unlock_file
        - load_cred
        - set_errmsg_filename
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:772,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:773,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'cc_file.c:775,35'
          Dst:             fileno
        - Src:             'cc_file.c:775,11'
          Dst:             krb5_lock_file
        - Src:             'cc_file.c:782,15'
          Dst:             get_size
        - Src:             'cc_file.c:785,15'
          Dst:             load_cred
        - Src:             'cc_file.c:788,15'
          Dst:             k5_buf_status
        - Src:             'cc_file.c:793,15'
          Dst:             k5_unmarshal_cred
        - Src:             'cc_file.c:798,14'
          Dst:             cred_removed
        - Src:             'cc_file.c:801,9'
          Dst:             k5_buf_truncate
        - Src:             'cc_file.c:802,9'
          Dst:             krb5_free_cred_contents
        - Src:             'cc_file.c:807,41'
          Dst:             fileno
        - Src:             'cc_file.c:807,15'
          Dst:             krb5_unlock_file
        - Src:             'cc_file.c:808,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:809,5'
          Dst:             k5_buf_free
        - Src:             'cc_file.c:810,12'
          Dst:             set_errmsg_filename
    - functionName:    fcc_end_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 816
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fclose
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:819,11'
          Dst:             fclose
    - functionName:    fcc_remove_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1141
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - delete_cred
        - krb5_cc_end_seq_get
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_free_cred_contents
        - krb5int_cc_creds_match_request
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:1146,11'
          Dst:             krb5_cc_start_seq_get
        - Src:             'cc_file.c:1151,15'
          Dst:             krb5_cc_next_cred
        - Src:             'cc_file.c:1155,13'
          Dst:             krb5int_cc_creds_match_request
        - Src:             'cc_file.c:1156,19'
          Dst:             delete_cred
        - Src:             'cc_file.c:1157,9'
          Dst:             krb5_free_cred_contents
        - Src:             'cc_file.c:1162,5'
          Dst:             krb5_cc_end_seq_get
    - functionName:    fcc_set_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcc_get_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1176
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_change_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1452
      functionLinenumberEnd: 1453
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_fccdata
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_assert_unlocked
        - k5_os_mutex_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:536,5'
          Dst:             k5_cc_mutex_assert_unlocked
        - Src:             'cc_file.c:538,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    fchmod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_fcc_new_unique
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          288
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - close
        - fchmod
        - fcntl
        - free_fccdata
        - interpret_errno
        - k5_cc_mutex_assert_locked
        - k5_cc_mutex_init
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_os_mutex_destroy
        - krb5_change_cache
        - mkstemp
        - set_errmsg_filename
        - store_16_be
        - strdup
        - unlink
        - write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_file.c:838,10'
          Dst:             mkstemp
        - Src:             'cc_file.c:840,41'
          Dst:             __errno_location
        - Src:             'cc_file.c:840,16'
          Dst:             interpret_errno
        - Src:             'cc_file.c:841,5'
          Dst:             fcntl
        - Src:             'cc_file.c:846,9'
          Dst:             close
        - Src:             'cc_file.c:847,9'
          Dst:             unlink
        - Src:             'cc_file.c:851,22'
          Dst:             strdup
        - Src:             'cc_file.c:854,9'
          Dst:             close
        - Src:             'cc_file.c:855,9'
          Dst:             unlink
        - Src:             'cc_file.c:859,11'
          Dst:             k5_cc_mutex_init
        - Src:             'cc_file.c:863,9'
          Dst:             close
        - Src:             'cc_file.c:864,9'
          Dst:             unlink
        - Src:             'cc_file.c:867,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_file.c:875,5'
          Dst:             fchmod
        - Src:             'cc_file.c:877,5'
          Dst:             store_16_be
        - Src:             'cc_file.c:878,11'
          Dst:             write
        - Src:             'cc_file.c:880,19'
          Dst:             __errno_location
        - Src:             'cc_file.c:881,15'
          Dst:             close
        - Src:             'cc_file.c:882,15'
          Dst:             unlink
        - Src:             'cc_file.c:883,29'
          Dst:             interpret_errno
        - Src:             'cc_file.c:888,15'
          Dst:             write
        - Src:             'cc_file.c:890,23'
          Dst:             __errno_location
        - Src:             'cc_file.c:891,19'
          Dst:             close
        - Src:             'cc_file.c:892,19'
          Dst:             unlink
        - Src:             'cc_file.c:893,33'
          Dst:             interpret_errno
        - Src:             'cc_file.c:897,9'
          Dst:             close
        - Src:             'cc_file.c:898,19'
          Dst:             __errno_location
        - Src:             'cc_file.c:899,15'
          Dst:             unlink
        - Src:             'cc_file.c:900,15'
          Dst:             interpret_errno
        - Src:             'cc_file.c:904,5'
          Dst:             k5_cc_mutex_assert_locked
        - Src:             'cc_file.c:905,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:908,9'
          Dst:             free_fccdata
        - Src:             'cc_file.c:918,5'
          Dst:             krb5_change_cache
        - Src:             'cc_file.c:922,11'
          Dst:             set_errmsg_filename
        - Src:             'cc_file.c:923,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_file.c:924,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    name_exists
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1207
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - kcmio_call
        - kcmreq_free
        - kcmreq_init
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1203,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1204,39'
          Dst:             strlen
        - Src:             'cc_kcm.c:1204,5'
          Dst:             k5_buf_add_len
        - Src:             'cc_kcm.c:1205,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:1206,5'
          Dst:             kcmreq_free
    - functionName:    kcmreq_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add_len
        - k5_buf_init_dynamic
        - store_16_be
        - strlen
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:173,5'
          Dst:             store_16_be
        - Src:             'cc_kcm.c:175,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'cc_kcm.c:176,5'
          Dst:             k5_buf_add_len
        - Src:             'cc_kcm.c:179,44'
          Dst:             strlen
        - Src:             'cc_kcm.c:179,9'
          Dst:             k5_buf_add_len
    - functionName:    kcmio_call
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - k5_buf_status
        - k5_input_get_uint32_be
        - k5_input_init
        - kcmio_unix_socket_read
        - kcmio_unix_socket_write
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:456,9'
          Dst:             k5_buf_status
        - Src:             'cc_kcm.c:460,15'
          Dst:             kcmio_unix_socket_write
        - Src:             'cc_kcm.c:464,15'
          Dst:             kcmio_unix_socket_read
        - Src:             'cc_kcm.c:476,5'
          Dst:             k5_input_init
        - Src:             'cc_kcm.c:477,11'
          Dst:             k5_input_get_uint32_be
    - functionName:    kcmreq_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_free
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:617,5'
          Dst:             k5_buf_free
    - functionName:    kcmio_unix_socket_write
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          106
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - close
        - kcmio_unix_socket_connect
        - krb5int_net_writev
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:355,5'
          Dst:             store_32_be
        - Src:             'cc_kcm.c:358,15'
          Dst:             krb5int_net_writev
        - Src:             'cc_kcm.c:361,15'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:373,9'
          Dst:             close
        - Src:             'cc_kcm.c:374,15'
          Dst:             kcmio_unix_socket_connect
    - functionName:    kcmio_unix_socket_read
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          187
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - krb5_net_read
        - load_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:395,10'
          Dst:             krb5_net_read
        - Src:             'cc_kcm.c:397,29'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:398,11'
          Dst:             load_32_be
        - Src:             'cc_kcm.c:402,10'
          Dst:             krb5_net_read
        - Src:             'cc_kcm.c:404,29'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:405,12'
          Dst:             load_32_be
        - Src:             'cc_kcm.c:412,10'
          Dst:             krb5_net_read
        - Src:             'cc_kcm.c:415,27'
          Dst:             __errno_location
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_be
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:111,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:112,32'
          Dst:             load_32_be
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    kcmio_unix_socket_connect
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - close
        - krb5int_strlcpy
        - profile_get_string
        - profile_release_string
        - socket
        - socket_connect
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:308,11'
          Dst:             profile_get_string
        - Src:             'cc_kcm.c:313,9'
          Dst:             strcmp
        - Src:             'cc_kcm.c:318,10'
          Dst:             socket
        - Src:             'cc_kcm.c:320,15'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:326,5'
          Dst:             krb5int_strlcpy
        - Src:             'cc_kcm.c:327,9'
          Dst:             socket_connect
        - Src:             'cc_kcm.c:328,16'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:328,63'
          Dst:             __errno_location
        - Src:             'cc_kcm.c:337,9'
          Dst:             close
        - Src:             'cc_kcm.c:338,5'
          Dst:             profile_release_string
    - functionName:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socket_connect
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/port-sockets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/port-sockets.h:232,10'
          Dst:             connect
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_ptcursor
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1101
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - free_uuid_list
        - kcmio_close
        - strdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1109,25'
          Dst:             strdup
        - Src:             'cc_kcm.c:1130,5'
          Dst:             kcmio_close
        - Src:             'cc_kcm.c:1131,5'
          Dst:             free_uuid_list
    - functionName:    kcmio_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:487,13'
          Dst:             close
    - functionName:    free_uuid_list
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kcm_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kcm_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_primary_name
        - kcmio_close
        - kcmio_connect
        - kcmreq_free
        - make_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:750,11'
          Dst:             kcmio_connect
        - Src:             'cc_kcm.c:755,15'
          Dst:             get_primary_name
        - Src:             'cc_kcm.c:761,11'
          Dst:             make_cache
        - Src:             'cc_kcm.c:765,5'
          Dst:             kcmio_close
        - Src:             'cc_kcm.c:766,5'
          Dst:             kcmreq_free
    - functionName:    kcm_gen_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - kcmio_call
        - kcmio_close
        - kcmio_connect
        - kcmreq_free
        - kcmreq_get_name
        - kcmreq_init
        - make_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:805,11'
          Dst:             kcmio_connect
        - Src:             'cc_kcm.c:808,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:809,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:812,11'
          Dst:             kcmreq_get_name
        - Src:             'cc_kcm.c:815,11'
          Dst:             make_cache
        - Src:             'cc_kcm.c:819,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:820,5'
          Dst:             kcmio_close
    - functionName:    kcm_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 835
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cache_call
        - k5_marshal_princ
        - kcmreq_free
        - kcmreq_init
        - set_kdc_offset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:830,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:831,5'
          Dst:             k5_marshal_princ
        - Src:             'cc_kcm.c:832,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:833,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:834,5'
          Dst:             set_kdc_offset
    - functionName:    kcm_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cache_call
        - kcm_close
        - kcmreq_free
        - kcmreq_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:857,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:858,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:859,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:860,11'
          Dst:             kcm_close
    - functionName:    kcm_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_destroy
        - kcmio_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:843,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'cc_kcm.c:844,5'
          Dst:             kcmio_close
    - functionName:    kcm_store
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cache_call
        - k5_marshal_cred
        - kcmreq_free
        - kcmreq_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:870,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:871,5'
          Dst:             k5_marshal_cred
        - Src:             'cc_kcm.c:872,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:873,5'
          Dst:             kcmreq_free
    - functionName:    kcm_retrieve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          154
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - cache_call
        - k5_buf_add_uint32_be
        - k5_cc_retrieve_cred_default
        - k5_etypes_contains
        - k5_marshal_mcred
        - k5_unmarshal_cred
        - kcmreq_free
        - kcmreq_init
        - krb5_free_cred_contents
        - krb5_get_tgs_ktypes
        - map_invalid
        - map_tcflags
        - unsupported_op_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:890,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:891,39'
          Dst:             map_tcflags
        - Src:             'cc_kcm.c:891,5'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:892,5'
          Dst:             k5_marshal_mcred
        - Src:             'cc_kcm.c:893,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:896,9'
          Dst:             unsupported_op_error
        - Src:             'cc_kcm.c:897,15'
          Dst:             k5_cc_retrieve_cred_default
        - Src:             'cc_kcm.c:904,11'
          Dst:             k5_unmarshal_cred
        - Src:             'cc_kcm.c:911,15'
          Dst:             krb5_get_tgs_ktypes
        - Src:             'cc_kcm.c:914,14'
          Dst:             k5_etypes_contains
        - Src:             'cc_kcm.c:915,19'
          Dst:             k5_cc_retrieve_cred_default
        - Src:             'cc_kcm.c:925,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:926,5'
          Dst:             krb5_free_cred_contents
        - Src:             'cc_kcm.c:929,54'
          Dst:             map_invalid
    - functionName:    kcm_get_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 935
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cache_call
        - dgettext
        - k5_unmarshal_princ
        - kcmreq_free
        - kcmreq_init
        - krb5_set_error_message
        - map_invalid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:940,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:941,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:946,33'
          Dst:             dgettext
        - Src:             'cc_kcm.c:946,9'
          Dst:             krb5_set_error_message
        - Src:             'cc_kcm.c:951,15'
          Dst:             k5_unmarshal_princ
        - Src:             'cc_kcm.c:952,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:953,12'
          Dst:             map_invalid
    - functionName:    kcm_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          125
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - cache_call
        - free_cred_list
        - free_uuid_list
        - get_kdc_offset
        - k5alloc
        - kcmreq_free
        - kcmreq_get_cred_list
        - kcmreq_get_uuid_list
        - kcmreq_init
        - unsupported_op_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:968,5'
          Dst:             get_kdc_offset
        - Src:             'cc_kcm.c:970,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:971,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:974,15'
          Dst:             kcmreq_get_cred_list
        - Src:             'cc_kcm.c:977,16'
          Dst:             unsupported_op_error
        - Src:             'cc_kcm.c:979,9'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:980,9'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:981,15'
          Dst:             cache_call
        - Src:             'cc_kcm.c:984,15'
          Dst:             kcmreq_get_uuid_list
        - Src:             'cc_kcm.c:991,14'
          Dst:             k5alloc
        - Src:             'cc_kcm.c:1001,5'
          Dst:             free_cred_list
        - Src:             'cc_kcm.c:1002,5'
          Dst:             free_uuid_list
        - Src:             'cc_kcm.c:1003,5'
          Dst:             kcmreq_free
    - functionName:    kcm_next_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          88
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - next_cred_by_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1038,16'
          Dst:             next_cred_by_uuid
    - functionName:    kcm_end_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_cred_list
        - free_uuid_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1060,5'
          Dst:             free_uuid_list
        - Src:             'cc_kcm.c:1061,5'
          Dst:             free_cred_list
    - functionName:    kcm_remove_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cache_call
        - k5_buf_add_uint32_be
        - k5_marshal_mcred
        - kcmreq_free
        - kcmreq_init
        - map_tcflags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1074,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1075,39'
          Dst:             map_tcflags
        - Src:             'cc_kcm.c:1075,5'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:1076,5'
          Dst:             k5_marshal_mcred
        - Src:             'cc_kcm.c:1077,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:1078,5'
          Dst:             kcmreq_free
    - functionName:    kcm_set_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kcm_get_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1094
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kcm_ptcursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          158
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - free_uuid_list
        - kcmio_call
        - kcmio_close
        - kcmio_connect
        - kcmreq_free
        - kcmreq_get_name
        - kcmreq_get_uuid_list
        - kcmreq_init
        - krb5_cc_default_name
        - make_ptcursor
        - strlen
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1151,15'
          Dst:             krb5_cc_default_name
        - Src:             'cc_kcm.c:1152,28'
          Dst:             strncmp
        - Src:             'cc_kcm.c:1153,16'
          Dst:             make_ptcursor
        - Src:             'cc_kcm.c:1155,11'
          Dst:             kcmio_connect
        - Src:             'cc_kcm.c:1160,9'
          Dst:             strlen
        - Src:             'cc_kcm.c:1161,16'
          Dst:             make_ptcursor
        - Src:             'cc_kcm.c:1163,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1164,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:1167,15'
          Dst:             make_ptcursor
        - Src:             'cc_kcm.c:1172,11'
          Dst:             kcmreq_get_uuid_list
        - Src:             'cc_kcm.c:1176,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:1177,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1178,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:1181,11'
          Dst:             kcmreq_get_name
        - Src:             'cc_kcm.c:1185,11'
          Dst:             make_ptcursor
        - Src:             'cc_kcm.c:1190,5'
          Dst:             free_uuid_list
        - Src:             'cc_kcm.c:1191,5'
          Dst:             kcmio_close
        - Src:             'cc_kcm.c:1192,5'
          Dst:             kcmreq_free
    - functionName:    kcm_ptcursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          192
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - k5_buf_add_len
        - kcmio_call
        - kcmreq_free
        - kcmreq_get_name
        - kcmreq_init
        - make_cache
        - name_exists
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1226,13'
          Dst:             name_exists
        - Src:             'cc_kcm.c:1227,20'
          Dst:             make_cache
        - Src:             'cc_kcm.c:1237,9'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:1238,9'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1239,9'
          Dst:             k5_buf_add_len
        - Src:             'cc_kcm.c:1240,15'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:1248,15'
          Dst:             kcmreq_get_name
        - Src:             'cc_kcm.c:1253,13'
          Dst:             strcmp
        - Src:             'cc_kcm.c:1256,15'
          Dst:             make_cache
        - Src:             'cc_kcm.c:1261,5'
          Dst:             kcmreq_free
    - functionName:    kcm_ptcursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1267
      functionLinenumberEnd: 1276
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_uuid_list
        - kcmio_close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1271,5'
          Dst:             free_uuid_list
        - Src:             'cc_kcm.c:1272,5'
          Dst:             kcmio_close
    - functionName:    kcm_replace
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1282
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          165
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - cache_call
        - k5_buf_add_uint32_be
        - k5_buf_status
        - k5_marshal_cred
        - k5_marshal_princ
        - k5_nonatomic_replace
        - kcmreq_free
        - kcmreq_init
        - store_32_be
        - unsupported_op_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1291,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1293,5'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:1294,5'
          Dst:             k5_marshal_princ
        - Src:             'cc_kcm.c:1296,5'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:1300,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:1301,9'
          Dst:             k5_marshal_cred
        - Src:             'cc_kcm.c:1302,13'
          Dst:             k5_buf_status
        - Src:             'cc_kcm.c:1304,13'
          Dst:             store_32_be
        - Src:             'cc_kcm.c:1307,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:1308,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:1310,9'
          Dst:             unsupported_op_error
        - Src:             'cc_kcm.c:1311,16'
          Dst:             k5_nonatomic_replace
    - functionName:    kcm_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1320
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1319,5'
          Dst:             k5_cc_mutex_lock
    - functionName:    kcm_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1325
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1326,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    kcm_switch_to
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1332
      functionLinenumberEnd: 1339
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cache_call
        - kcmreq_free
        - kcmreq_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1336,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1337,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:1338,5'
          Dst:             kcmreq_free
    - functionName:    cache_call
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - kcmio_call
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:675,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_kcm.c:676,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:677,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    k5_buf_add_uint32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_32_be
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-buf.h:144,15'
          Dst:             k5_buf_get_space
        - Src:             '../../../include/k5-buf.h:147,9'
          Dst:             store_32_be
    - functionName:    unsupported_op_error
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - k5_cc_mutex_init
        - kcmio_close
        - kcmio_connect
        - strdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:635,15'
          Dst:             kcmio_connect
        - Src:             'cc_kcm.c:643,12'
          Dst:             calloc
        - Src:             'cc_kcm.c:646,21'
          Dst:             strdup
        - Src:             'cc_kcm.c:649,9'
          Dst:             k5_cc_mutex_init
        - Src:             'cc_kcm.c:664,5'
          Dst:             kcmio_close
    - functionName:    kcmreq_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - memchr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:501,11'
          Dst:             memchr
        - Src:             'cc_kcm.c:505,11'
          Dst:             k5_input_get_bytes
    - functionName:    kcmio_connect
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - kcmio_unix_socket_connect
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:430,10'
          Dst:             calloc
        - Src:             'cc_kcm.c:438,15'
          Dst:             kcmio_unix_socket_connect
    - functionName:    kcmreq_get_uuid_list
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_input_get_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:534,15'
          Dst:             k5_input_get_bytes
    - functionName:    map_tcflags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          153
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_cred_list
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_cred_contents
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:562,9'
          Dst:             krb5_free_cred_contents
    - functionName:    next_cred_by_uuid
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cache_call
        - k5_buf_add_len
        - k5_unmarshal_cred
        - kcmreq_free
        - kcmreq_init
        - map_invalid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:1019,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:1020,5'
          Dst:             k5_buf_add_len
        - Src:             'cc_kcm.c:1023,11'
          Dst:             cache_call
        - Src:             'cc_kcm.c:1025,15'
          Dst:             k5_unmarshal_cred
        - Src:             'cc_kcm.c:1026,5'
          Dst:             kcmreq_free
        - Src:             'cc_kcm.c:1027,12'
          Dst:             map_invalid
    - functionName:    map_invalid
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_kdc_offset
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - cache_call
        - k5_input_get_uint32_be
        - kcmreq_free
        - kcmreq_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:688,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:689,9'
          Dst:             cache_call
        - Src:             'cc_kcm.c:691,19'
          Dst:             k5_input_get_uint32_be
        - Src:             'cc_kcm.c:700,5'
          Dst:             kcmreq_free
    - functionName:    kcmreq_get_cred_list
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          162
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - free_cred_list
        - k5_input_get_bytes
        - k5_input_get_uint32_be
        - k5_unmarshal_cred
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:579,13'
          Dst:             k5_input_get_uint32_be
        - Src:             'cc_kcm.c:590,19'
          Dst:             k5calloc
        - Src:             'cc_kcm.c:597,15'
          Dst:             k5_input_get_uint32_be
        - Src:             'cc_kcm.c:598,16'
          Dst:             k5_input_get_bytes
        - Src:             'cc_kcm.c:601,15'
          Dst:             k5_unmarshal_cred
        - Src:             'cc_kcm.c:606,9'
          Dst:             free_cred_list
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    set_kdc_offset
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cache_call
        - k5_buf_add_uint32_be
        - kcmreq_free
        - kcmreq_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:710,9'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:711,9'
          Dst:             k5_buf_add_uint32_be
        - Src:             'cc_kcm.c:712,15'
          Dst:             cache_call
        - Src:             'cc_kcm.c:713,9'
          Dst:             kcmreq_free
    - functionName:    get_primary_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kcmio_call
        - kcmreq_get_name
        - kcmreq_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:733,5'
          Dst:             kcmreq_init
        - Src:             'cc_kcm.c:734,11'
          Dst:             kcmio_call
        - Src:             'cc_kcm.c:737,12'
          Dst:             kcmreq_get_name
    - functionName:    k5_kcm_primary_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_kcm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_primary_name
        - kcmio_close
        - kcmio_connect
        - kcmreq_free
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_kcm.c:780,11'
          Dst:             kcmio_connect
        - Src:             'cc_kcm.c:783,11'
          Dst:             get_primary_name
        - Src:             'cc_kcm.c:786,17'
          Dst:             strdup
        - Src:             'cc_kcm.c:790,5'
          Dst:             kcmio_close
        - Src:             'cc_kcm.c:791,5'
          Dst:             kcmreq_free
    - functionName:    store_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_copy_creds
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:196,11'
          Dst:             krb5_copy_creds
    - functionName:    empty_mcc_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_creds
        - krb5_free_principal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:159,9'
          Dst:             krb5_free_creds
        - Src:             'cc_memory.c:165,5'
          Dst:             krb5_free_principal
    - functionName:    init_mcc_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - empty_mcc_cache
        - krb5_copy_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:176,5'
          Dst:             empty_mcc_cache
        - Src:             'cc_memory.c:182,12'
          Dst:             krb5_copy_principal
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    new_mcc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - k5_cc_mutex_init
        - k5_hashtab_add
        - k5_os_mutex_destroy
        - strdup
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:491,11'
          Dst:             k5_cc_mutex_init
        - Src:             'cc_memory.c:497,15'
          Dst:             strdup
        - Src:             'cc_memory.c:499,9'
          Dst:             k5_os_mutex_destroy
        - Src:             'cc_memory.c:511,46'
          Dst:             strlen
        - Src:             'cc_memory.c:511,9'
          Dst:             k5_hashtab_add
        - Src:             'cc_memory.c:513,9'
          Dst:             k5_os_mutex_destroy
    - functionName:    init_table
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_hashtab_create
        - krb5_c_random_make_octets
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:140,19'
          Dst:             make_data
        - Src:             'cc_memory.c:144,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'cc_memory.c:147,12'
          Dst:             k5_hashtab_create
    - functionName:    krb5_mcc_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:800,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:791,5'
          Dst:             k5_cc_mutex_lock
    - functionName:    krb5_mcc_replace
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - init_mcc_cache
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_change_cache
        - store_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:776,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:777,11'
          Dst:             init_mcc_cache
        - Src:             'cc_memory.c:779,15'
          Dst:             store_cred
        - Src:             'cc_memory.c:780,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:782,9'
          Dst:             krb5_change_cache
    - functionName:    krb5_mcc_ptcursor_free
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 758
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mcc_ptcursor_next
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 752
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_cc_default_name
        - krb5_cc_resolve
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:747,15'
          Dst:             krb5_cc_default_name
        - Src:             'cc_memory.c:748,28'
          Dst:             strncmp
        - Src:             'cc_memory.c:751,12'
          Dst:             krb5_cc_resolve
    - functionName:    krb5_mcc_ptcursor_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mcc_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mcc_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          145
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - init_table
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_hashtab_get
        - new_mcc_data
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:323,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:324,5'
          Dst:             init_table
        - Src:             'cc_memory.c:325,47'
          Dst:             strlen
        - Src:             'cc_memory.c:325,9'
          Dst:             k5_hashtab_get
        - Src:             'cc_memory.c:327,9'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:329,9'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:331,15'
          Dst:             new_mcc_data
        - Src:             'cc_memory.c:333,13'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:337,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_generate_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - init_table
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_hashtab_get
        - krb5_change_cache
        - krb5int_random_string
        - new_mcc_data
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:551,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:552,5'
          Dst:             init_table
        - Src:             'cc_memory.c:556,15'
          Dst:             krb5int_random_string
        - Src:             'cc_memory.c:558,13'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:564,28'
          Dst:             strlen
        - Src:             'cc_memory.c:563,13'
          Dst:             k5_hashtab_get
        - Src:             'cc_memory.c:568,11'
          Dst:             new_mcc_data
        - Src:             'cc_memory.c:570,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:577,5'
          Dst:             krb5_change_cache
    - functionName:    krb5_mcc_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - init_mcc_cache
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_change_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:225,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:226,11'
          Dst:             init_mcc_cache
        - Src:             'cc_memory.c:227,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:229,9'
          Dst:             krb5_change_cache
    - functionName:    krb5_mcc_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - empty_mcc_cache
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_hashtab_remove
        - krb5_change_cache
        - krb5_mcc_close
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:273,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:274,49'
          Dst:             strlen
        - Src:             'cc_memory.c:274,9'
          Dst:             k5_hashtab_remove
        - Src:             'cc_memory.c:276,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:280,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:281,5'
          Dst:             empty_mcc_cache
        - Src:             'cc_memory.c:284,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:288,5'
          Dst:             krb5_mcc_close
        - Src:             'cc_memory.c:290,5'
          Dst:             krb5_change_cache
    - functionName:    krb5_mcc_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - empty_mcc_cache
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_os_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:248,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:250,5'
          Dst:             k5_cc_mutex_unlock
        - Src:             'cc_memory.c:254,9'
          Dst:             empty_mcc_cache
        - Src:             'cc_memory.c:256,9'
          Dst:             k5_os_mutex_destroy
    - functionName:    krb5_mcc_store
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 696
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - store_cred
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:701,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:702,11'
          Dst:             store_cred
        - Src:             'cc_memory.c:703,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_retrieve
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_cc_retrieve_cred_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:627,12'
          Dst:             k5_cc_retrieve_cred_default
    - functionName:    krb5_mcc_get_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_copy_principal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:614,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:618,15'
          Dst:             krb5_copy_principal
        - Src:             'cc_memory.c:619,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:382,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:385,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_next_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          142
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - k5_copy_creds_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:430,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:444,14'
          Dst:             k5_copy_creds_contents
        - Src:             'cc_memory.c:449,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_end_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mcc_remove_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_cc_mutex_lock
        - k5_cc_mutex_unlock
        - krb5_free_creds
        - krb5int_cc_creds_match_request
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_memory.c:645,5'
          Dst:             k5_cc_mutex_lock
        - Src:             'cc_memory.c:649,13'
          Dst:             krb5int_cc_creds_match_request
        - Src:             'cc_memory.c:650,13'
          Dst:             krb5_free_creds
        - Src:             'cc_memory.c:655,5'
          Dst:             k5_cc_mutex_unlock
    - functionName:    krb5_mcc_set_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mcc_get_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    k5_cc_store_primary_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - data_eq
        - data_eq_string
        - krb5_cc_set_config
        - krb5_cc_store_cred
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:313,9'
          Dst:             data_eq_string
        - Src:             'ccfns.c:314,10'
          Dst:             data_eq
        - Src:             'ccfns.c:315,15'
          Dst:             krb5_cc_set_config
        - Src:             'ccfns.c:322,12'
          Dst:             krb5_cc_store_cred
    - functionName:    krb5_cc_set_config
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - k5_build_conf_principals
        - krb5_cc_store_cred
        - krb5_clear_error_message
        - krb5_free_cred_contents
        - krb5int_copy_data_contents
        - krb5int_trace
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:244,5'
          Dst:             krb5int_trace
        - Src:             'ccfns.c:246,11'
          Dst:             k5_build_conf_principals
        - Src:             'ccfns.c:255,9'
          Dst:             krb5_clear_error_message
        - Src:             'ccfns.c:256,15'
          Dst:             krb5int_copy_data_contents
        - Src:             'ccfns.c:259,15'
          Dst:             krb5_cc_store_cred
        - Src:             'ccfns.c:262,5'
          Dst:             krb5_free_cred_contents
    - functionName:    krb5_cc_store_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_trace
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:83,5'
          Dst:             krb5int_trace
    - functionName:    k5_build_conf_principals
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          100
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_build_principal
        - krb5_cc_get_principal
        - krb5_copy_principal
        - krb5_free_principal
        - krb5_free_unparsed_name
        - krb5_unparse_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:194,11'
          Dst:             krb5_cc_get_principal
        - Src:             'ccfns.c:199,15'
          Dst:             krb5_unparse_name
        - Src:             'ccfns.c:204,11'
          Dst:             krb5_build_principal
        - Src:             'ccfns.c:209,11'
          Dst:             krb5_copy_principal
        - Src:             'ccfns.c:212,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'ccfns.c:213,5'
          Dst:             krb5_free_principal
    - functionName:    krb5_cc_get_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_switch
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_get_config
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_build_conf_principals
        - krb5_cc_retrieve_cred
        - krb5_free_cred_contents
        - krb5int_copy_data_contents
        - krb5int_trace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:277,11'
          Dst:             k5_build_conf_principals
        - Src:             'ccfns.c:281,11'
          Dst:             krb5_cc_retrieve_cred
        - Src:             'ccfns.c:285,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'ccfns.c:289,5'
          Dst:             krb5int_trace
        - Src:             'ccfns.c:292,5'
          Dst:             krb5_free_cred_contents
        - Src:             'ccfns.c:293,5'
          Dst:             krb5_free_cred_contents
    - functionName:    krb5_cc_retrieve_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          161
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_is_referral_realm
        - krb5int_trace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:96,5'
          Dst:             krb5int_trace
        - Src:             'ccfns.c:100,10'
          Dst:             krb5_is_referral_realm
        - Src:             'ccfns.c:109,5'
          Dst:             krb5int_trace
    - functionName:    krb5_is_config_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:224,9'
          Dst:             memcmp
        - Src:             'ccfns.c:229,9'
          Dst:             memcmp
    - functionName:    k5_cc_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_cc_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_get_type
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_get_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_set_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_remove_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_trace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:146,5'
          Dst:             krb5int_trace
    - functionName:    krb5_cc_end_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_next_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_close
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_trace
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:69,5'
          Dst:             krb5int_trace
    - functionName:    krb5_cc_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_trace
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:62,5'
          Dst:             krb5int_trace
    - functionName:    krb5_cc_gen_new
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_trace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:54,5'
          Dst:             krb5int_trace
    - functionName:    krb5_cc_get_full_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccfns.c:44,9'
          Dst:             asprintf
    - functionName:    krb5_cc_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    krb5_kt_dup
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_kt_resolve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ktbase.c:218,24'
          Dst:             krb5_kt_resolve
    - functionName:    krb5_kt_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          211
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - __ctype_b_loc
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5memdup0
        - strchr
        - strcmp
        - strdup
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ktbase.c:163,10'
          Dst:             strchr
        - Src:             'ktbase.c:169,25'
          Dst:             __ctype_b_loc
        - Src:             'ktbase.c:171,15'
          Dst:             strdup
        - Src:             'ktbase.c:177,15'
          Dst:             strdup
        - Src:             'ktbase.c:183,15'
          Dst:             k5memdup0
        - Src:             'ktbase.c:190,5'
          Dst:             k5_mutex_lock
        - Src:             'ktbase.c:195,5'
          Dst:             k5_mutex_unlock
        - Src:             'ktbase.c:197,13'
          Dst:             strcmp
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    krb5_kt_register
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ktbase.c:122,5'
          Dst:             k5_mutex_lock
        - Src:             'ktbase.c:123,32'
          Dst:             strcmp
        - Src:             'ktbase.c:126,9'
          Dst:             k5_mutex_unlock
        - Src:             'ktbase.c:130,9'
          Dst:             k5_mutex_unlock
        - Src:             'ktbase.c:136,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_kt_finalize
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          37
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_os_mutex_destroy
        - krb5int_mkt_finalize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ktbase.c:101,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'ktbase.c:107,5'
          Dst:             krb5int_mkt_finalize
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_kt_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktbase.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          37
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_finish_init
        - krb5int_mkt_initialize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ktbase.c:85,11'
          Dst:             k5_mutex_finish_init
        - Src:             'ktbase.c:88,11'
          Dst:             krb5int_mkt_initialize
    - functionName:    krb5_kt_client_default
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktdefault.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_kt_client_default_name
        - krb5_kt_resolve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ktdefault.c:54,11'
          Dst:             k5_kt_client_default_name
        - Src:             'ktdefault.c:57,11'
          Dst:             krb5_kt_resolve
    - functionName:    krb5_kt_default
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktdefault.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_kt_default_name
        - krb5_kt_resolve
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ktdefault.c:43,19'
          Dst:             krb5_kt_default_name
        - Src:             'ktdefault.c:45,12'
          Dst:             krb5_kt_resolve
    - functionName:    krb5_kt_free_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfr_entry.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_keytab_entry_contents
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfr_entry.c:48,12'
          Dst:             krb5_free_keytab_entry_contents
    - functionName:    krb5_free_keytab_entry_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfr_entry.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - explicit_bzero
        - krb5_free_principal
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfr_entry.c:37,5'
          Dst:             krb5_free_principal
        - Src:             'ktfr_entry.c:39,9'
          Dst:             explicit_bzero
    - functionName:    k5_kt_get_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_copy_principal
        - krb5_kt_end_seq_get
        - krb5_kt_free_entry
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:203,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'ktfns.c:206,11'
          Dst:             krb5_kt_next_entry
        - Src:             'ktfns.c:207,11'
          Dst:             krb5_kt_end_seq_get
        - Src:             'ktfns.c:210,11'
          Dst:             krb5_copy_principal
        - Src:             'ktfns.c:211,5'
          Dst:             krb5_kt_free_entry
    - functionName:    krb5_kt_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:86,12'
          Dst:             abort
    - functionName:    krb5_kt_next_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:93,12'
          Dst:             abort
    - functionName:    krb5_kt_end_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:100,12'
          Dst:             abort
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_entries
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_free_keytab_entry_contents
        - krb5_kt_end_seq_get
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
        - krb5_sname_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:144,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'ktfns.c:147,19'
          Dst:             krb5_kt_next_entry
        - Src:             'ktfns.c:148,17'
          Dst:             krb5_sname_match
        - Src:             'ktfns.c:149,15'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'ktfns.c:153,11'
          Dst:             krb5_kt_end_seq_get
    - functionName:    k5_kt_have_match
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - free_canonprinc
        - k5_canonprinc
        - k5_sname_wildcard_host
        - match_entries
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:168,9'
          Dst:             k5_sname_wildcard_host
        - Src:             'ktfns.c:169,16'
          Dst:             match_entries
        - Src:             'ktfns.c:171,19'
          Dst:             k5_canonprinc
        - Src:             'ktfns.c:173,15'
          Dst:             match_entries
        - Src:             'ktfns.c:177,5'
          Dst:             free_canonprinc
    - functionName:    krb5_kt_have_content
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          88
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - dgettext
        - krb5_kt_end_seq_get
        - krb5_kt_free_entry
        - krb5_kt_get_name
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
        - krb5_set_error_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:116,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'ktfns.c:119,11'
          Dst:             krb5_kt_next_entry
        - Src:             'ktfns.c:120,5'
          Dst:             krb5_kt_end_seq_get
        - Src:             'ktfns.c:123,5'
          Dst:             krb5_kt_free_entry
        - Src:             'ktfns.c:127,9'
          Dst:             krb5_kt_get_name
        - Src:             'ktfns.c:129,19'
          Dst:             dgettext
        - Src:             'ktfns.c:128,9'
          Dst:             krb5_set_error_message
    - functionName:    krb5_kt_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:47,12'
          Dst:             abort
    - functionName:    krb5_kt_get_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          142
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - krb5_free_default_realm
        - krb5_get_default_realm
        - krb5_is_referral_realm
        - krb5int_trace
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:64,9'
          Dst:             krb5_is_referral_realm
        - Src:             'ktfns.c:68,15'
          Dst:             krb5_get_default_realm
        - Src:             'ktfns.c:72,35'
          Dst:             strlen
        - Src:             'ktfns.c:74,11'
          Dst:             abort
        - Src:             'ktfns.c:76,5'
          Dst:             krb5int_trace
        - Src:             'ktfns.c:78,9'
          Dst:             krb5_free_default_realm
    - functionName:    krb5_kt_close
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'ktfns.c:53,12'
          Dst:             abort
    - functionName:    krb5_kt_get_type
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/ktfns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ktfileint_delete_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 887
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          214
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - fread
        - fseek
        - fwrite
        - htonl
        - k5_sync_disk_file
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:844,9'
          Dst:             fseek
        - Src:             'kt_file.c:845,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:847,10'
          Dst:             fread
        - Src:             'kt_file.c:851,16'
          Dst:             ntohl
        - Src:             'kt_file.c:856,26'
          Dst:             htonl
        - Src:             'kt_file.c:858,13'
          Dst:             fseek
        - Src:             'kt_file.c:859,20'
          Dst:             __errno_location
        - Src:             'kt_file.c:862,14'
          Dst:             fwrite
        - Src:             'kt_file.c:874,18'
          Dst:             fwrite
        - Src:             'kt_file.c:883,16'
          Dst:             k5_sync_disk_file
    - functionName:    ntohl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ktfileint_find_slot
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          266
      EdgeCount:       61
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - fread
        - fseek
        - ftell
        - fwrite
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:1321,9'
          Dst:             fseek
        - Src:             'kt_file.c:1322,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:1323,10'
          Dst:             fread
        - Src:             'kt_file.c:1324,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:1327,24'
          Dst:             ftell
        - Src:             'kt_file.c:1329,20'
          Dst:             __errno_location
        - Src:             'kt_file.c:1330,14'
          Dst:             fread
        - Src:             'kt_file.c:1333,17'
          Dst:             fseek
        - Src:             'kt_file.c:1334,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1337,18'
          Dst:             fwrite
        - Src:             'kt_file.c:1338,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1343,20'
          Dst:             ntohl
        - Src:             'kt_file.c:1347,17'
          Dst:             fseek
        - Src:             'kt_file.c:1348,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1358,21'
          Dst:             fseek
        - Src:             'kt_file.c:1359,28'
          Dst:             __errno_location
        - Src:             'kt_file.c:1364,26'
          Dst:             ftell
        - Src:             'kt_file.c:1366,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1367,17'
          Dst:             fseek
        - Src:             'kt_file.c:1368,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1370,18'
          Dst:             fwrite
        - Src:             'kt_file.c:1371,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:1372,17'
          Dst:             fseek
        - Src:             'kt_file.c:1373,24'
          Dst:             __errno_location
    - functionName:    krb5_ktfileint_size_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          112
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ktfileint_write_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1126
      functionLinenumberEnd: 1267
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          645
      EdgeCount:       110
      CyclomaticComplexity: 33
      functionsReached:
        - __errno_location
        - fflush
        - fseek
        - fwrite
        - htonl
        - htons
        - k5_sync_disk_file
        - krb5_ktfileint_find_slot
        - krb5_ktfileint_size_entry
        - krb5_timeofday
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:1139,14'
          Dst:             krb5_ktfileint_size_entry
        - Src:             'kt_file.c:1142,14'
          Dst:             krb5_ktfileint_find_slot
        - Src:             'kt_file.c:1148,9'
          Dst:             fseek
        - Src:             'kt_file.c:1150,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:1156,17'
          Dst:             htons
        - Src:             'kt_file.c:1159,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1165,16'
          Dst:             htons
        - Src:             'kt_file.c:1166,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1169,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1179,20'
          Dst:             htons
        - Src:             'kt_file.c:1180,14'
          Dst:             fwrite
        - Src:             'kt_file.c:1183,14'
          Dst:             fwrite
        - Src:             'kt_file.c:1192,22'
          Dst:             htonl
        - Src:             'kt_file.c:1193,14'
          Dst:             fwrite
        - Src:             'kt_file.c:1201,9'
          Dst:             krb5_timeofday
        - Src:             'kt_file.c:1207,21'
          Dst:             htonl
        - Src:             'kt_file.c:1208,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1214,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1221,19'
          Dst:             htons
        - Src:             'kt_file.c:1222,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1229,16'
          Dst:             htons
        - Src:             'kt_file.c:1230,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1233,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1241,17'
          Dst:             htonl
        - Src:             'kt_file.c:1242,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1245,9'
          Dst:             fflush
        - Src:             'kt_file.c:1248,14'
          Dst:             k5_sync_disk_file
        - Src:             'kt_file.c:1254,9'
          Dst:             fseek
        - Src:             'kt_file.c:1255,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:1258,23'
          Dst:             htonl
        - Src:             'kt_file.c:1259,10'
          Dst:             fwrite
        - Src:             'kt_file.c:1262,9'
          Dst:             fflush
        - Src:             'kt_file.c:1264,14'
          Dst:             k5_sync_disk_file
    - functionName:    htons
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fflush
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ktfileint_openw
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 818
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_ktfileint_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:819,12'
          Dst:             krb5_ktfileint_open
    - functionName:    krb5_ktfileint_open
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          359
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - dgettext
        - fclose
        - fcntl
        - feof
        - fileno
        - fopen
        - fread
        - ftell
        - fwrite
        - htons
        - k5_create_secure_file
        - krb5_lock_file
        - krb5_set_error_message
        - krb5_unlock_file
        - ntohs
        - setbuf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kt_file.c:752,13'
          Branch Sides:    []
      Callsites:
        - Src:             'kt_file.c:738,5'
          Dst:             __errno_location
        - Src:             'kt_file.c:739,19'
          Dst:             fopen
        - Src:             'kt_file.c:742,51'
          Dst:             __errno_location
        - Src:             'kt_file.c:744,13'
          Dst:             k5_create_secure_file
        - Src:             'kt_file.c:745,13'
          Dst:             __errno_location
        - Src:             'kt_file.c:746,27'
          Dst:             fopen
        - Src:             'kt_file.c:752,21'
          Dst:             __errno_location
        - Src:             'kt_file.c:758,27'
          Dst:             dgettext
        - Src:             'kt_file.c:757,17'
          Dst:             krb5_set_error_message
        - Src:             'kt_file.c:761,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:765,5'
          Dst:             fileno
        - Src:             'kt_file.c:765,5'
          Dst:             fcntl
        - Src:             'kt_file.c:766,43'
          Dst:             fileno
        - Src:             'kt_file.c:766,19'
          Dst:             krb5_lock_file
        - Src:             'kt_file.c:767,16'
          Dst:             fclose
        - Src:             'kt_file.c:772,5'
          Dst:             setbuf
        - Src:             'kt_file.c:776,18'
          Dst:             htons
        - Src:             'kt_file.c:778,14'
          Dst:             fwrite
        - Src:             'kt_file.c:779,22'
          Dst:             __errno_location
        - Src:             'kt_file.c:780,46'
          Dst:             fileno
        - Src:             'kt_file.c:780,20'
          Dst:             krb5_unlock_file
        - Src:             'kt_file.c:781,20'
          Dst:             fclose
        - Src:             'kt_file.c:787,14'
          Dst:             fread
        - Src:             'kt_file.c:788,17'
          Dst:             feof
        - Src:             'kt_file.c:791,26'
          Dst:             __errno_location
        - Src:             'kt_file.c:792,46'
          Dst:             fileno
        - Src:             'kt_file.c:792,20'
          Dst:             krb5_unlock_file
        - Src:             'kt_file.c:793,20'
          Dst:             fclose
        - Src:             'kt_file.c:797,34'
          Dst:             ntohs
        - Src:             'kt_file.c:800,46'
          Dst:             fileno
        - Src:             'kt_file.c:800,20'
          Dst:             krb5_unlock_file
        - Src:             'kt_file.c:801,20'
          Dst:             fclose
        - Src:             'kt_file.c:806,22'
          Dst:             ftell
    - functionName:    setbuf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    feof
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    krb5_ktfileint_internal_read_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 891
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         117
      ICount:          880
      EdgeCount:       163
      CyclomaticComplexity: 48
      functionsReached:
        - __errno_location
        - calloc
        - fread
        - fseek
        - ftell
        - k5alloc
        - krb5_free_principal
        - ntohl
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:911,9'
          Dst:             fseek
        - Src:             'kt_file.c:913,16'
          Dst:             __errno_location
        - Src:             'kt_file.c:917,25'
          Dst:             ftell
        - Src:             'kt_file.c:918,14'
          Dst:             fread
        - Src:             'kt_file.c:922,20'
          Dst:             ntohl
        - Src:             'kt_file.c:927,17'
          Dst:             fseek
        - Src:             'kt_file.c:928,24'
          Dst:             __errno_location
        - Src:             'kt_file.c:937,17'
          Dst:             ftell
        - Src:             'kt_file.c:944,10'
          Dst:             fread
        - Src:             'kt_file.c:949,17'
          Dst:             ntohs
        - Src:             'kt_file.c:953,28'
          Dst:             k5alloc
        - Src:             'kt_file.c:961,9'
          Dst:             calloc
        - Src:             'kt_file.c:969,10'
          Dst:             fread
        - Src:             'kt_file.c:974,22'
          Dst:             ntohs
        - Src:             'kt_file.c:987,9'
          Dst:             fread
        - Src:             'kt_file.c:999,14'
          Dst:             fread
        - Src:             'kt_file.c:1004,26'
          Dst:             ntohs
        - Src:             'kt_file.c:1017,14'
          Dst:             fread
        - Src:             'kt_file.c:1026,14'
          Dst:             fread
        - Src:             'kt_file.c:1031,38'
          Dst:             ntohl
        - Src:             'kt_file.c:1035,10'
          Dst:             fread
        - Src:             'kt_file.c:1040,32'
          Dst:             ntohl
        - Src:             'kt_file.c:1043,10'
          Dst:             fread
        - Src:             'kt_file.c:1050,10'
          Dst:             fread
        - Src:             'kt_file.c:1055,19'
          Dst:             ntohs
        - Src:             'kt_file.c:1061,10'
          Dst:             fread
        - Src:             'kt_file.c:1066,17'
          Dst:             ntohs
        - Src:             'kt_file.c:1080,10'
          Dst:             fread
        - Src:             'kt_file.c:1087,11'
          Dst:             ftell
        - Src:             'kt_file.c:1089,14'
          Dst:             fread
        - Src:             'kt_file.c:1094,21'
          Dst:             ntohl
        - Src:             'kt_file.c:1103,9'
          Dst:             fseek
        - Src:             'kt_file.c:1104,17'
          Dst:             __errno_location
        - Src:             'kt_file.c:1110,5'
          Dst:             krb5_free_principal
    - functionName:    krb5_ktfileint_close
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fclose
        - fileno
        - krb5_unlock_file
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:830,40'
          Dst:             fileno
        - Src:             'kt_file.c:830,14'
          Dst:             krb5_unlock_file
        - Src:             'kt_file.c:831,12'
          Dst:             fclose
    - functionName:    more_recent
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - ts_after
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:267,10'
          Dst:             ts_after
        - Src:             'kt_file.c:270,10'
          Dst:             ts_after
    - functionName:    krb5_ktfileint_read_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_ktfileint_internal_read_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:1121,12'
          Dst:             krb5_ktfileint_internal_read_entry
    - functionName:    krb5_ktfileint_openr
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_ktfileint_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:813,12'
          Dst:             krb5_ktfileint_open
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    krb5_ktfile_remove
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          190
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - dgettext
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_kt_free_entry
        - krb5_ktfileint_close
        - krb5_ktfileint_delete_entry
        - krb5_ktfileint_internal_read_entry
        - krb5_ktfileint_openw
        - krb5_principal_compare
        - krb5_set_error_message
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:566,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:569,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:571,19'
          Dst:             dgettext
        - Src:             'kt_file.c:570,9'
          Dst:             krb5_set_error_message
        - Src:             'kt_file.c:575,19'
          Dst:             krb5_ktfileint_openw
        - Src:             'kt_file.c:576,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:585,23'
          Dst:             krb5_ktfileint_internal_read_entry
        - Src:             'kt_file.c:592,13'
          Dst:             krb5_principal_compare
        - Src:             'kt_file.c:594,13'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:597,9'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:604,16'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:605,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:609,14'
          Dst:             krb5_ktfileint_delete_entry
        - Src:             'kt_file.c:612,16'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:614,18'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:616,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_add
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          101
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dgettext
        - fseek
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_ktfileint_close
        - krb5_ktfileint_openw
        - krb5_ktfileint_write_entry
        - krb5_set_error_message
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:533,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:536,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:538,19'
          Dst:             dgettext
        - Src:             'kt_file.c:537,9'
          Dst:             krb5_set_error_message
        - Src:             'kt_file.c:541,19'
          Dst:             krb5_ktfileint_openw
        - Src:             'kt_file.c:542,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:545,9'
          Dst:             fseek
        - Src:             'kt_file.c:546,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:549,14'
          Dst:             krb5_ktfileint_write_entry
        - Src:             'kt_file.c:550,5'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:551,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_end_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_ktfileint_close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:514,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:517,18'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:520,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_get_next
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          108
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - fseek
        - ftell
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_ktfileint_read_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:485,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:487,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:490,9'
          Dst:             fseek
        - Src:             'kt_file.c:491,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:494,19'
          Dst:             krb5_ktfileint_read_entry
        - Src:             'kt_file.c:495,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:498,16'
          Dst:             ftell
        - Src:             'kt_file.c:500,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          146
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_ktfileint_close
        - krb5_ktfileint_openr
        - krb5_set_error_message
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:443,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:446,23'
          Dst:             krb5_ktfileint_openr
        - Src:             'kt_file.c:447,13'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:454,13'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:455,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:463,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:465,9'
          Dst:             krb5_set_error_message
        - Src:             'kt_file.c:469,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_get_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          377
      EdgeCount:       90
      CyclomaticComplexity: 25
      functionsReached:
        - __errno_location
        - dgettext
        - fseek
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_kt_free_entry
        - krb5_ktfileint_close
        - krb5_ktfileint_openr
        - krb5_ktfileint_read_entry
        - krb5_principal_compare
        - krb5_set_error_message
        - krb5_unparse_name
        - more_recent
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:295,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_file.c:300,13'
          Dst:             fseek
        - Src:             'kt_file.c:301,13'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:302,20'
          Dst:             __errno_location
        - Src:             'kt_file.c:308,23'
          Dst:             krb5_ktfileint_openr
        - Src:             'kt_file.c:309,13'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:323,23'
          Dst:             krb5_ktfileint_read_entry
        - Src:             'kt_file.c:333,14'
          Dst:             krb5_principal_compare
        - Src:             'kt_file.c:334,13'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:341,13'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:349,17'
          Dst:             more_recent
        - Src:             'kt_file.c:350,17'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:353,17'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:366,17'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:375,17'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:387,17'
          Dst:             krb5_unparse_name
        - Src:             'kt_file.c:389,27'
          Dst:             dgettext
        - Src:             'kt_file.c:388,17'
          Dst:             krb5_set_error_message
        - Src:             'kt_file.c:396,20'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:397,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:398,9'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:401,36'
          Dst:             krb5_ktfileint_close
        - Src:             'kt_file.c:402,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_file.c:403,9'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_file.c:406,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_ktfile_close
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - explicit_bzero
        - k5_os_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:248,5'
          Dst:             explicit_bzero
        - Src:             'kt_file.c:249,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    krb5_ktfile_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:427,14'
          Dst:             snprintf
    - functionName:    krb5_ktfile_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          120
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - k5_mutex_init
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_file.c:198,10'
          Dst:             calloc
        - Src:             'kt_file.c:203,12'
          Dst:             calloc
        - Src:             'kt_file.c:207,18'
          Dst:             strdup
        - Src:             'kt_file.c:211,11'
          Dst:             k5_mutex_init
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    krb5_mkt_remove
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          158
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_kt_free_entry
        - krb5_principal_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:588,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:598,14'
          Dst:             krb5_principal_compare
        - Src:             'kt_memory.c:607,5'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_memory.c:614,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    krb5_mkt_add
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          173
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_free_keyblock_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:533,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:549,11'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'kt_memory.c:557,11'
          Dst:             krb5_copy_principal
        - Src:             'kt_memory.c:559,9'
          Dst:             krb5_free_keyblock_contents
        - Src:             'kt_memory.c:574,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_mkt_end_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_mkt_get_next
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          132
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:489,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:492,9'
          Dst:             k5_mutex_unlock
        - Src:             'kt_memory.c:500,11'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'kt_memory.c:503,15'
          Dst:             krb5_copy_principal
        - Src:             'kt_memory.c:507,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_mkt_start_seq_get
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:472,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:474,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_mkt_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:459,14'
          Dst:             snprintf
    - functionName:    krb5_mkt_get_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          290
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5_c_enctype_compare
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_principal_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:382,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:389,14'
          Dst:             krb5_principal_compare
        - Src:             'kt_memory.c:395,24'
          Dst:             krb5_c_enctype_compare
        - Src:             'kt_memory.c:427,15'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'kt_memory.c:436,19'
          Dst:             krb5_copy_principal
        - Src:             'kt_memory.c:445,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5_mkt_close
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          157
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_os_mutex_destroy
        - krb5_kt_free_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:300,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:317,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:319,5'
          Dst:             k5_mutex_unlock
        - Src:             'kt_memory.c:342,13'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_memory.c:348,9'
          Dst:             k5_os_mutex_destroy
        - Src:             'kt_memory.c:362,5'
          Dst:             k5_mutex_unlock
    - functionName:    create_list_node
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          154
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
        - k5_mutex_init
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:190,12'
          Dst:             calloc
        - Src:             'kt_memory.c:196,20'
          Dst:             calloc
        - Src:             'kt_memory.c:203,12'
          Dst:             calloc
        - Src:             'kt_memory.c:211,18'
          Dst:             strdup
        - Src:             'kt_memory.c:217,11'
          Dst:             k5_mutex_init
    - functionName:    krb5_mkt_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - create_list_node
        - k5_mutex_lock
        - k5_mutex_unlock
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:252,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:255,13'
          Dst:             strcmp
        - Src:             'kt_memory.c:264,15'
          Dst:             create_list_node
        - Src:             'kt_memory.c:272,5'
          Dst:             k5_mutex_lock
        - Src:             'kt_memory.c:274,5'
          Dst:             k5_mutex_unlock
        - Src:             'kt_memory.c:277,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_mkt_finalize
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          96
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - k5_os_mutex_destroy
        - krb5_kt_free_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:148,5'
          Dst:             k5_os_mutex_destroy
        - Src:             'kt_memory.c:162,13'
          Dst:             krb5_kt_free_entry
        - Src:             'kt_memory.c:168,9'
          Dst:             k5_os_mutex_destroy
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_mkt_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/keytab/kt_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kt_memory.c:139,12'
          Dst:             k5_mutex_finish_init
    - functionName:    krb5_auth_con_set_authdata_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_get_authdata_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_get_subkey_enctype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_get_checksum_func
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_set_checksum_func
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_getpermetypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_copy_etypes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:395,12'
          Dst:             k5_copy_etypes
    - functionName:    krb5_auth_con_setpermetypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_copy_etypes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:378,11'
          Dst:             k5_copy_etypes
    - functionName:    krb5_auth_con_getrcache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_setrcache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_getflags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_setflags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_getivector
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_setivector
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_initivector
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_c_init_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:319,12'
          Dst:             krb5_c_init_state
    - functionName:    krb5_auth_con_getremoteseqnumber
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_getlocalseqnumber
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_set_safe_cksumtype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_set_req_cksumtype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_auth_con_getrecvsubkey_k
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_k_reference_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:281,5'
          Dst:             krb5_k_reference_key
    - functionName:    krb5_auth_con_getsendsubkey_k
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_k_reference_key
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:263,5'
          Dst:             krb5_k_reference_key
    - functionName:    krb5_auth_con_setrecvsubkey_k
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_k_free_key
        - krb5_k_reference_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:244,5'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:246,5'
          Dst:             krb5_k_reference_key
    - functionName:    krb5_auth_con_setrecvsubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:232,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:235,16'
          Dst:             krb5_k_create_key
    - functionName:    krb5_auth_con_setsendsubkey_k
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_k_free_key
        - krb5_k_reference_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:222,5'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:224,5'
          Dst:             krb5_k_reference_key
    - functionName:    krb5_auth_con_setsendsubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:210,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:213,16'
          Dst:             krb5_k_create_key
    - functionName:    krb5_auth_con_getrecvsubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_key_keyblock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:272,16'
          Dst:             krb5_k_key_keyblock
    - functionName:    krb5_auth_con_getremotesubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_auth_con_getrecvsubkey
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:203,12'
          Dst:             krb5_auth_con_getrecvsubkey
    - functionName:    krb5_auth_con_getsendsubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_key_keyblock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:254,16'
          Dst:             krb5_k_key_keyblock
    - functionName:    krb5_auth_con_getlocalsubkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_auth_con_getsendsubkey
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:197,12'
          Dst:             krb5_auth_con_getsendsubkey
    - functionName:    krb5_auth_con_getkey_k
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_k_reference_key
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:189,5'
          Dst:             krb5_k_reference_key
    - functionName:    krb5_auth_con_getkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_key_keyblock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:180,16'
          Dst:             krb5_k_key_keyblock
    - functionName:    krb5_auth_con_setuseruserkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:172,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:173,12'
          Dst:             krb5_k_create_key
    - functionName:    krb5_auth_con_setports
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          107
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_copy_addr
        - krb5_free_address
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:138,16'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:140,16'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:144,18'
          Dst:             krb5_copy_addr
        - Src:             'auth_con.c:151,18'
          Dst:             krb5_copy_addr
    - functionName:    krb5_auth_con_getaddrs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_copy_addr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:119,18'
          Dst:             krb5_copy_addr
        - Src:             'auth_con.c:124,18'
          Dst:             krb5_copy_addr
    - functionName:    krb5_auth_con_setaddrs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          107
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_copy_addr
        - krb5_free_address
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:90,16'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:92,16'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:96,18'
          Dst:             krb5_copy_addr
        - Src:             'auth_con.c:103,18'
          Dst:             krb5_copy_addr
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    krb5_auth_con_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          241
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - k5_memrcache_free
        - k5_rc_close
        - krb5_authdata_context_free
        - krb5_free_address
        - krb5_free_authenticator
        - krb5_k_free_key
        - zapfree
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:56,9'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:58,9'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:60,9'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:62,9'
          Dst:             krb5_free_address
        - Src:             'auth_con.c:64,9'
          Dst:             krb5_free_authenticator
        - Src:             'auth_con.c:66,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:68,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:70,9'
          Dst:             krb5_k_free_key
        - Src:             'auth_con.c:71,5'
          Dst:             zapfree
        - Src:             'auth_con.c:73,9'
          Dst:             k5_rc_close
        - Src:             'auth_con.c:77,9'
          Dst:             krb5_authdata_context_free
        - Src:             'auth_con.c:78,5'
          Dst:             k5_memrcache_free
    - functionName:    krb5_auth_con_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/auth_con.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'auth_con.c:35,28'
          Dst:             calloc
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    extract_cammacs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          164
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - k5_unwrap_cammac_svc
        - krb5_free_authdata
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:549,15'
          Dst:             k5_unwrap_cammac_svc
        - Src:             'authdata.c:558,20'
          Dst:             realloc
        - Src:             'authdata.c:575,5'
          Dst:             krb5_free_authdata
        - Src:             'authdata.c:576,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5_free_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    38
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_copy_authdatum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1257
      functionLinenumberEnd: 1270
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_internalize_authdata_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1252
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          123
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - k5_ad_internalize
        - krb5_authdata_context_free
        - krb5_authdata_context_init
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1220,12'
          Dst:             krb5_ser_unpack_int32
        - Src:             'authdata.c:1227,12'
          Dst:             krb5_authdata_context_init
        - Src:             'authdata.c:1231,12'
          Dst:             k5_ad_internalize
        - Src:             'authdata.c:1234,9'
          Dst:             krb5_authdata_context_free
        - Src:             'authdata.c:1238,12'
          Dst:             krb5_ser_unpack_int32
        - Src:             'authdata.c:1243,9'
          Dst:             krb5_authdata_context_free
    - functionName:    krb5_authdata_context_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          271
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - calloc
        - k5_ad_init_modules
        - k5_ad_module_count
        - krb5_authdata_context_free
        - krb5int_close_plugin_dirs
        - krb5int_free_plugin_dir_data
        - krb5int_get_plugin_dir_data
        - krb5int_open_plugin_dirs
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:383,22'
          Dst:             k5_ad_module_count
        - Src:             'authdata.c:388,9'
          Dst:             krb5int_open_plugin_dirs
        - Src:             'authdata.c:391,9'
          Dst:             krb5int_get_plugin_dir_data
        - Src:             'authdata.c:399,26'
          Dst:             k5_ad_module_count
        - Src:             'authdata.c:403,15'
          Dst:             calloc
        - Src:             'authdata.c:409,24'
          Dst:             calloc
        - Src:             'authdata.c:418,16'
          Dst:             k5_ad_init_modules
        - Src:             'authdata.c:424,16'
          Dst:             k5_ad_init_modules
        - Src:             'authdata.c:433,9'
          Dst:             krb5int_free_plugin_dir_data
        - Src:             'authdata.c:436,9'
          Dst:             krb5int_close_plugin_dirs
        - Src:             'authdata.c:437,9'
          Dst:             krb5_authdata_context_free
    - functionName:    k5_ad_internalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          166
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - k5_ad_find_module
        - k5_ser_unpack_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:323,12'
          Dst:             k5_ser_unpack_len
        - Src:             'authdata.c:332,16'
          Dst:             k5_ser_unpack_len
        - Src:             'authdata.c:339,18'
          Dst:             k5_ad_find_module
    - functionName:    krb5_authdata_context_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          135
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - krb5int_close_plugin_dirs
        - zapfree
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:475,5'
          Dst:             krb5int_close_plugin_dirs
        - Src:             'authdata.c:476,5'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5_ad_find_module
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - data_eq_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:295,14'
          Dst:             data_eq_string
    - functionName:    k5_ad_module_count
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_ad_init_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          352
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_externalize_authdata_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_ad_externalize
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1182,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'authdata.c:1187,12'
          Dst:             k5_ad_externalize
        - Src:             'authdata.c:1193,12'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_ad_externalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          194
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:216,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'authdata.c:238,19'
          Dst:             strlen
        - Src:             'authdata.c:240,16'
          Dst:             krb5_ser_pack_int32
        - Src:             'authdata.c:244,16'
          Dst:             krb5_ser_pack_bytes
        - Src:             'authdata.c:263,9'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_authdata_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_ad_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1157,12'
          Dst:             k5_ad_size
    - functionName:    k5_ad_size
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:177,9'
          Dst:             __assert_fail
        - Src:             'authdata.c:179,51'
          Dst:             strlen
    - functionName:    k5_copy_ad_module_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          325
      EdgeCount:       53
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1049,5'
          Dst:             strcmp
        - Src:             'authdata.c:1049,5'
          Dst:             __assert_fail
        - Src:             'authdata.c:1056,9'
          Dst:             __assert_fail
        - Src:             'authdata.c:1057,9'
          Dst:             __assert_fail
        - Src:             'authdata.c:1058,9'
          Dst:             __assert_fail
        - Src:             'authdata.c:1102,9'
          Dst:             __assert_fail
        - Src:             'authdata.c:1103,9'
          Dst:             __assert_fail
    - functionName:    krb5_authdata_context_copy
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1146
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_copy_ad_module_data
        - krb5_authdata_context_free
        - krb5_authdata_context_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1126,12'
          Dst:             krb5_authdata_context_init
        - Src:             'authdata.c:1133,16'
          Dst:             k5_copy_ad_module_data
        - Src:             'authdata.c:1139,9'
          Dst:             krb5_authdata_context_free
    - functionName:    krb5_authdata_free_internal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          83
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_ad_find_module
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:1005,43'
          Dst:             strlen
        - Src:             'authdata.c:1005,12'
          Dst:             make_data
        - Src:             'authdata.c:1006,14'
          Dst:             k5_ad_find_module
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_authdata_export_internal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_ad_find_module
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:978,43'
          Dst:             strlen
        - Src:             'authdata.c:978,12'
          Dst:             make_data
        - Src:             'authdata.c:979,14'
          Dst:             k5_ad_find_module
    - functionName:    krb5_authdata_export_attributes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 926
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - k5_ad_externalize
        - k5_ad_size
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:933,12'
          Dst:             k5_ad_size
        - Src:             'authdata.c:952,12'
          Dst:             k5_ad_externalize
        - Src:             'authdata.c:954,9'
          Dst:             krb5_free_data
    - functionName:    krb5_authdata_delete_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 891
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          125
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_authdata_set_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 884
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_authdata_get_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          133
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_merge_data_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:737,9'
          Dst:             realloc
    - functionName:    krb5_authdata_get_attribute_types
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_merge_data_list
        - krb5int_free_data_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:777,16'
          Dst:             k5_merge_data_list
        - Src:             'authdata.c:779,13'
          Dst:             krb5int_free_data_list
        - Src:             'authdata.c:787,9'
          Dst:             krb5int_free_data_list
    - functionName:    get_cammac_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - extract_cammacs
        - krb5_find_authdata
        - krb5_free_authdata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:591,11'
          Dst:             krb5_find_authdata
        - Src:             'authdata.c:596,11'
          Dst:             extract_cammacs
        - Src:             'authdata.c:600,5'
          Dst:             krb5_free_authdata
    - functionName:    k5_get_kdc_issued_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          121
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_find_authdata
        - krb5_free_authdata
        - krb5_verify_authdata_kdc_issued
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:510,12'
          Dst:             krb5_find_authdata
        - Src:             'authdata.c:520,12'
          Dst:             krb5_verify_authdata_kdc_issued
        - Src:             'authdata.c:531,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5int_authdata_verify
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          439
      EdgeCount:       92
      CyclomaticComplexity: 26
      functionsReached:
        - __assert_fail
        - get_cammac_authdata
        - k5_get_kdc_issued_authdata
        - krb5_find_authdata
        - krb5_free_authdata
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:623,12'
          Dst:             k5_get_kdc_issued_authdata
        - Src:             'authdata.c:628,12'
          Dst:             get_cammac_authdata
        - Src:             'authdata.c:645,20'
          Dst:             krb5_find_authdata
        - Src:             'authdata.c:654,20'
          Dst:             krb5_find_authdata
        - Src:             'authdata.c:677,20'
          Dst:             krb5_find_authdata
        - Src:             'authdata.c:691,13'
          Dst:             __assert_fail
        - Src:             'authdata.c:712,9'
          Dst:             krb5_free_authdata
        - Src:             'authdata.c:718,5'
          Dst:             krb5_free_principal
        - Src:             'authdata.c:719,5'
          Dst:             krb5_free_authdata
        - Src:             'authdata.c:720,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5_authdata_import_attributes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_ad_internalize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata.c:491,12'
          Dst:             k5_ad_internalize
    - functionName:    krb5_authdata_export_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_exp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          218
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - krb5_free_authdata
        - realloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_exp.c:74,20'
          Dst:             realloc
        - Src:             'authdata_exp.c:88,9'
          Dst:             krb5_free_authdata
    - functionName:    grow_find_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          120
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_set_error_message
        - krb5int_copy_authdatum
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_dec.c:95,13'
          Dst:             krb5_set_error_message
        - Src:             'authdata_dec.c:99,21'
          Dst:             realloc
        - Src:             'authdata_dec.c:107,14'
          Dst:             krb5int_copy_authdatum
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_authind_decode
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          161
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - decode_utf8_strings
        - k5_free_data_ptr_list
        - make_data
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_dec.c:272,14'
          Dst:             make_data
        - Src:             'authdata_dec.c:273,11'
          Dst:             decode_utf8_strings
        - Src:             'authdata_dec.c:280,15'
          Dst:             realloc
        - Src:             'authdata_dec.c:294,5'
          Dst:             k5_free_data_ptr_list
    - functionName:    krb5_verify_authdata_kdc_issued
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          204
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - decode_krb5_ad_kdcissued
        - encode_krb5_authdata
        - krb5_c_is_keyed_cksum
        - krb5_c_verify_checksum
        - krb5_free_ad_kdcissued
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_dec.c:207,12'
          Dst:             decode_krb5_ad_kdcissued
        - Src:             'authdata_dec.c:211,10'
          Dst:             krb5_c_is_keyed_cksum
        - Src:             'authdata_dec.c:212,9'
          Dst:             krb5_free_ad_kdcissued
        - Src:             'authdata_dec.c:216,12'
          Dst:             encode_krb5_authdata
        - Src:             'authdata_dec.c:218,9'
          Dst:             krb5_free_ad_kdcissued
        - Src:             'authdata_dec.c:222,12'
          Dst:             krb5_c_verify_checksum
        - Src:             'authdata_dec.c:226,9'
          Dst:             krb5_free_ad_kdcissued
        - Src:             'authdata_dec.c:227,9'
          Dst:             krb5_free_data
        - Src:             'authdata_dec.c:231,5'
          Dst:             krb5_free_data
        - Src:             'authdata_dec.c:234,9'
          Dst:             krb5_free_ad_kdcissued
        - Src:             'authdata_dec.c:248,5'
          Dst:             krb5_free_ad_kdcissued
    - functionName:    find_authdata_1
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          175
      EdgeCount:       39
      CyclomaticComplexity: 8
      functionsReached:
        - find_authdata_1
        - grow_find_authdata
        - krb5_decode_authdata_container
        - krb5_free_authdata
      functionUses:    3
      BranchProfiles:
        - Branch String:   'authdata_dec.c:126,9'
          Branch Sides:    []
      Callsites:
        - Src:             'authdata_dec.c:129,26'
          Dst:             krb5_decode_authdata_container
        - Src:             'authdata_dec.c:134,26'
          Dst:             find_authdata_1
        - Src:             'authdata_dec.c:139,17'
          Dst:             krb5_free_authdata
        - Src:             'authdata_dec.c:151,26'
          Dst:             grow_find_authdata
    - functionName:    krb5_decode_authdata_container
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - decode_krb5_authdata
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_dec.c:74,12'
          Dst:             decode_krb5_authdata
    - functionName:    krb5_find_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - find_authdata_1
        - krb5_free_authdata
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_dec.c:169,16'
          Dst:             calloc
        - Src:             'authdata_dec.c:174,18'
          Dst:             find_authdata_1
        - Src:             'authdata_dec.c:176,18'
          Dst:             find_authdata_1
        - Src:             'authdata_dec.c:179,10'
          Dst:             krb5_free_authdata
    - functionName:    krb5_build_principal_ext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_pr_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          274
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - k5_infer_principal_type
        - krb5int_copy_data_contents_add0
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_pr_ext.c:70,9'
          Dst:             krb5int_copy_data_contents_add0
        - Src:             'bld_pr_ext.c:81,13'
          Dst:             krb5int_copy_data_contents_add0
        - Src:             'bld_pr_ext.c:87,23'
          Dst:             k5_infer_principal_type
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_anonymous_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_anonymous_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_build_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_build_principal_alloc_va
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_princ.c:148,14'
          Dst:             krb5_build_principal_alloc_va
    - functionName:    krb5_build_principal_alloc_va
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - build_principal_va
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_princ.c:128,14'
          Dst:             build_principal_va
    - functionName:    build_principal_va
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          264
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - k5_infer_principal_type
        - k5memdup0
        - make_data
        - realloc
        - strdup
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_princ.c:60,13'
          Dst:             k5memdup0
        - Src:             'bld_princ.c:67,24'
          Dst:             realloc
        - Src:             'bld_princ.c:76,34'
          Dst:             strlen
        - Src:             'bld_princ.c:77,32'
          Dst:             strdup
        - Src:             'bld_princ.c:85,24'
          Dst:             make_data
        - Src:             'bld_princ.c:88,23'
          Dst:             k5_infer_principal_type
    - functionName:    k5_infer_principal_type
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - data_eq_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_princ.c:34,31'
          Dst:             data_eq_string
        - Src:             'bld_princ.c:39,9'
          Dst:             data_eq_string
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    krb5_build_principal_va
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/bld_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - build_principal_va
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bld_princ.c:111,12'
          Dst:             build_principal_va
    - functionName:    krb5_copy_addresses
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_addrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - krb5_copy_addr
        - krb5_free_addresses
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_addrs.c:64,40'
          Dst:             calloc
        - Src:             'copy_addrs.c:68,18'
          Dst:             krb5_copy_addr
        - Src:             'copy_addrs.c:70,13'
          Dst:             krb5_free_addresses
    - functionName:    krb5_copy_addr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_addrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_copy_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_merge_authdata
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_auth.c:116,12'
          Dst:             krb5_merge_authdata
    - functionName:    krb5_merge_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          229
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - calloc
        - krb5_free_authdata
        - krb5int_copy_authdatum
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_auth.c:82,44'
          Dst:             calloc
        - Src:             'copy_auth.c:88,22'
          Dst:             krb5int_copy_authdatum
        - Src:             'copy_auth.c:91,17'
          Dst:             krb5_free_authdata
        - Src:             'copy_auth.c:99,22'
          Dst:             krb5int_copy_authdatum
        - Src:             'copy_auth.c:102,17'
          Dst:             krb5_free_authdata
    - functionName:    krb5_auth_con_getauthenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_athctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_copy_authenticator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_athctr.c:85,13'
          Dst:             krb5_copy_authenticator
    - functionName:    krb5_copy_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_athctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          186
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - krb5_copy_authdata
        - krb5_copy_checksum
        - krb5_copy_keyblock
        - krb5_copy_principal
        - krb5_free_checksum
        - krb5_free_keyblock
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_athctr.c:42,14'
          Dst:             krb5_copy_principal
        - Src:             'copy_athctr.c:49,19'
          Dst:             krb5_copy_checksum
        - Src:             'copy_athctr.c:50,9'
          Dst:             krb5_free_principal
        - Src:             'copy_athctr.c:56,18'
          Dst:             krb5_copy_keyblock
        - Src:             'copy_athctr.c:58,13'
          Dst:             krb5_free_checksum
        - Src:             'copy_athctr.c:59,13'
          Dst:             krb5_free_principal
        - Src:             'copy_athctr.c:66,18'
          Dst:             krb5_copy_authdata
        - Src:             'copy_athctr.c:69,13'
          Dst:             krb5_free_keyblock
        - Src:             'copy_athctr.c:70,13'
          Dst:             krb5_free_checksum
        - Src:             'copy_athctr.c:71,13'
          Dst:             krb5_free_principal
    - functionName:    krb5_copy_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_copy_creds_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          205
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - krb5_copy_addresses
        - krb5_copy_authdata
        - krb5_copy_data
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_free_addresses
        - krb5_free_principal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_creds.c:65,14'
          Dst:             krb5_copy_principal
        - Src:             'copy_creds.c:68,14'
          Dst:             krb5_copy_principal
        - Src:             'copy_creds.c:71,14'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'copy_creds.c:75,14'
          Dst:             krb5_copy_addresses
        - Src:             'copy_creds.c:78,14'
          Dst:             krb5_copy_data
        - Src:             'copy_creds.c:83,14'
          Dst:             krb5_copy_data
        - Src:             'copy_creds.c:90,14'
          Dst:             krb5_copy_authdata
        - Src:             'copy_creds.c:103,5'
          Dst:             krb5_free_addresses
        - Src:             'copy_creds.c:107,5'
          Dst:             krb5_free_principal
        - Src:             'copy_creds.c:109,5'
          Dst:             krb5_free_principal
    - functionName:    krb5_copy_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_copy_creds_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_creds.c:43,14'
          Dst:             k5_copy_creds_contents
    - functionName:    krb5int_copy_data_contents_add0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_copy_data_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    46
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_copy_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_copy_data_contents
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_data.c:51,14'
          Dst:             krb5int_copy_data_contents
    - functionName:    krb5_copy_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_copy_keyblock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_key.c:34,12'
          Dst:             krb5int_c_copy_keyblock
    - functionName:    krb5_copy_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          173
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - krb5int_copy_data_contents
        - krb5int_copy_data_contents_add0
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_princ.c:53,13'
          Dst:             krb5int_copy_data_contents
        - Src:             'copy_princ.c:63,9'
          Dst:             krb5int_copy_data_contents_add0
    - functionName:    krb5_copy_keyblock_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/cp_key_cnt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_copy_keyblock_contents
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'cp_key_cnt.c:35,12'
          Dst:             krb5int_c_copy_keyblock_contents
    - functionName:    k5_etypes_contains
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/etype_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_copy_etypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/etype_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_count_etypes
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'etype_list.c:54,13'
          Dst:             k5_count_etypes
    - functionName:    k5_count_etypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/etype_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_fwd_tgt_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fwd_tgt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          470
      EdgeCount:       101
      CyclomaticComplexity: 30
      functionsReached:
        - k5_os_hostaddr
        - k5memdup0
        - krb5_auth_con_getkey
        - krb5_cc_close
        - krb5_cc_retrieve_cred
        - krb5_copy_principal
        - krb5_free_addresses
        - krb5_free_cred_contents
        - krb5_free_creds
        - krb5_free_data
        - krb5_free_keyblock
        - krb5_get_cred_via_tkt
        - krb5_get_credentials
        - krb5_mk_1cred
        - krb5_principal_compare
        - krb5int_cc_default
        - krb5int_tgtname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fwd_tgt.c:62,23'
          Dst:             krb5int_cc_default
        - Src:             'fwd_tgt.c:66,14'
          Dst:             krb5_auth_con_getkey
        - Src:             'fwd_tgt.c:71,9'
          Dst:             krb5_free_keyblock
        - Src:             'fwd_tgt.c:79,18'
          Dst:             krb5_copy_principal
        - Src:             'fwd_tgt.c:82,18'
          Dst:             krb5_copy_principal
        - Src:             'fwd_tgt.c:85,18'
          Dst:             krb5_get_credentials
        - Src:             'fwd_tgt.c:91,9'
          Dst:             krb5_free_creds
        - Src:             'fwd_tgt.c:93,9'
          Dst:             krb5_free_cred_contents
        - Src:             'fwd_tgt.c:96,19'
          Dst:             krb5_copy_principal
        - Src:             'fwd_tgt.c:99,14'
          Dst:             krb5int_tgtname
        - Src:             'fwd_tgt.c:106,14'
          Dst:             krb5_cc_retrieve_cred
        - Src:             'fwd_tgt.c:113,10'
          Dst:             krb5_principal_compare
        - Src:             'fwd_tgt.c:135,25'
          Dst:             k5memdup0
        - Src:             'fwd_tgt.c:142,18'
          Dst:             k5_os_hostaddr
        - Src:             'fwd_tgt.c:155,19'
          Dst:             krb5_get_cred_via_tkt
        - Src:             'fwd_tgt.c:159,27'
          Dst:             krb5_get_cred_via_tkt
        - Src:             'fwd_tgt.c:165,14'
          Dst:             krb5_mk_1cred
        - Src:             'fwd_tgt.c:167,5'
          Dst:             krb5_free_creds
        - Src:             'fwd_tgt.c:171,13'
          Dst:             krb5_free_data
        - Src:             'fwd_tgt.c:179,9'
          Dst:             krb5_free_addresses
        - Src:             'fwd_tgt.c:181,9'
          Dst:             krb5_cc_close
        - Src:             'fwd_tgt.c:183,5'
          Dst:             krb5_free_cred_contents
        - Src:             'fwd_tgt.c:184,5'
          Dst:             krb5_free_cred_contents
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    kdcrep2creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          250
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - calloc
        - encode_krb5_ticket
        - krb5_copy_addresses
        - krb5_copy_data
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_free_keyblock_contents
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gc_via_tkt.c:45,35'
          Dst:             calloc
        - Src:             'gc_via_tkt.c:49,19'
          Dst:             krb5_copy_principal
        - Src:             'gc_via_tkt.c:53,19'
          Dst:             krb5_copy_principal
        - Src:             'gc_via_tkt.c:57,19'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'gc_via_tkt.c:61,5'
          Dst:             krb5int_trace
        - Src:             'gc_via_tkt.c:64,19'
          Dst:             krb5_copy_data
        - Src:             'gc_via_tkt.c:77,23'
          Dst:             krb5_copy_addresses
        - Src:             'gc_via_tkt.c:82,23'
          Dst:             krb5_copy_addresses
        - Src:             'gc_via_tkt.c:87,19'
          Dst:             encode_krb5_ticket
        - Src:             'gc_via_tkt.c:95,5'
          Dst:             krb5_free_keyblock_contents
    - functionName:    ts_within
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2379
      functionLinenumberEnd: 2380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ts_after
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2380,25'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,13'
          Dst:             ts_after
        - Src:             '../../../include/k5-int.h:2380,56'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,44'
          Dst:             ts_after
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_reply_server
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          165
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - data_eq_string
        - krb5_principal_compare
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gc_via_tkt.c:108,10'
          Dst:             krb5_principal_compare
        - Src:             'gc_via_tkt.c:114,9'
          Dst:             krb5_principal_compare
        - Src:             'gc_via_tkt.c:124,9'
          Dst:             krb5int_trace
        - Src:             'gc_via_tkt.c:131,10'
          Dst:             data_eq_string
        - Src:             'gc_via_tkt.c:132,10'
          Dst:             data_eq_string
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    tgt_is_local_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - data_eq
        - data_eq_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gc_via_tkt.c:144,16'
          Dst:             data_eq_string
        - Src:             'gc_via_tkt.c:145,16'
          Dst:             data_eq
        - Src:             'gc_via_tkt.c:146,16'
          Dst:             data_eq
    - functionName:    krb5int_process_tgs_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      int
      argCount:        14
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         132
      ICount:          822
      EdgeCount:       178
      CyclomaticComplexity: 48
      functionsReached:
        - check_reply_server
        - data_eq_string
        - decode_krb5_error
        - dgettext
        - kdcrep2creds
        - krb5_clear_error_message
        - krb5_free_error
        - krb5_free_kdc_rep
        - krb5_free_unparsed_name
        - krb5_principal_compare
        - krb5_set_error_message
        - krb5_unparse_name
        - krb5int_decode_tgs_rep
        - krb5int_fast_process_error
        - krb5int_find_pa_data
        - krb5int_trace
        - tgt_is_local_realm
        - ts_after
        - ts_within
      functionUses:    2
      BranchProfiles:
        - Branch String:   'gc_via_tkt.c:196,13'
          Branch Sides:    []
      Callsites:
        - Src:             'gc_via_tkt.c:181,16'
          Dst:             krb5int_find_pa_data
        - Src:             'gc_via_tkt.c:183,9'
          Dst:             krb5int_find_pa_data
        - Src:             'gc_via_tkt.c:187,18'
          Dst:             decode_krb5_error
        - Src:             'gc_via_tkt.c:190,18'
          Dst:             krb5int_fast_process_error
        - Src:             'gc_via_tkt.c:199,27'
          Dst:             dgettext
        - Src:             'gc_via_tkt.c:198,17'
          Dst:             krb5_set_error_message
        - Src:             'gc_via_tkt.c:206,21'
          Dst:             krb5_unparse_name
        - Src:             'gc_via_tkt.c:208,31'
          Dst:             dgettext
        - Src:             'gc_via_tkt.c:207,21'
          Dst:             krb5_set_error_message
        - Src:             'gc_via_tkt.c:210,21'
          Dst:             krb5_free_unparsed_name
        - Src:             'gc_via_tkt.c:214,21'
          Dst:             krb5_clear_error_message
        - Src:             'gc_via_tkt.c:219,9'
          Dst:             krb5_free_error
        - Src:             'gc_via_tkt.c:228,14'
          Dst:             krb5int_decode_tgs_rep
        - Src:             'gc_via_tkt.c:232,9'
          Dst:             krb5int_trace
        - Src:             'gc_via_tkt.c:233,14'
          Dst:             krb5int_decode_tgs_rep
        - Src:             'gc_via_tkt.c:250,10'
          Dst:             tgt_is_local_realm
        - Src:             'gc_via_tkt.c:257,22'
          Dst:             data_eq_string
        - Src:             'gc_via_tkt.c:259,13'
          Dst:             krb5_principal_compare
        - Src:             'gc_via_tkt.c:262,16'
          Dst:             data_eq_string
        - Src:             'gc_via_tkt.c:268,14'
          Dst:             krb5_principal_compare
        - Src:             'gc_via_tkt.c:273,18'
          Dst:             check_reply_server
        - Src:             'gc_via_tkt.c:284,9'
          Dst:             ts_after
        - Src:             'gc_via_tkt.c:289,9'
          Dst:             ts_after
        - Src:             'gc_via_tkt.c:296,9'
          Dst:             ts_after
        - Src:             'gc_via_tkt.c:303,10'
          Dst:             ts_within
        - Src:             'gc_via_tkt.c:319,14'
          Dst:             kdcrep2creds
        - Src:             'gc_via_tkt.c:328,9'
          Dst:             krb5_free_kdc_rep
    - functionName:    krb5_get_cred_via_tkt_ext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          294
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - decode_krb5_error
        - k5_make_tgs_req
        - k5_sendto_kdc
        - krb5_free_data_contents
        - krb5_free_error
        - krb5_free_keyblock
        - krb5int_fast_free_state
        - krb5int_fast_make_state
        - krb5int_fast_process_error
        - krb5int_process_tgs_reply
        - krb5int_trace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'gc_via_tkt.c:357,14'
          Dst:             krb5int_fast_make_state
        - Src:             'gc_via_tkt.c:361,5'
          Dst:             krb5int_trace
        - Src:             'gc_via_tkt.c:364,14'
          Dst:             k5_make_tgs_req
        - Src:             'gc_via_tkt.c:371,14'
          Dst:             k5_sendto_kdc
        - Src:             'gc_via_tkt.c:377,26'
          Dst:             decode_krb5_error
        - Src:             'gc_via_tkt.c:380,26'
          Dst:             krb5int_fast_process_error
        - Src:             'gc_via_tkt.c:386,21'
          Dst:             krb5_free_error
        - Src:             'gc_via_tkt.c:387,21'
          Dst:             krb5_free_data_contents
        - Src:             'gc_via_tkt.c:390,17'
          Dst:             krb5_free_error
        - Src:             'gc_via_tkt.c:396,14'
          Dst:             krb5int_process_tgs_reply
        - Src:             'gc_via_tkt.c:406,5'
          Dst:             krb5int_fast_free_state
        - Src:             'gc_via_tkt.c:407,5'
          Dst:             krb5int_trace
        - Src:             'gc_via_tkt.c:409,5'
          Dst:             krb5_free_data_contents
        - Src:             'gc_via_tkt.c:410,5'
          Dst:             krb5_free_data_contents
        - Src:             'gc_via_tkt.c:416,13'
          Dst:             krb5_free_keyblock
    - functionName:    krb5_get_cred_via_tkt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gc_via_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_get_cred_via_tkt_ext
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'gc_via_tkt.c:154,12'
          Dst:             krb5_get_cred_via_tkt_ext
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    complete
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_cc_store_cred
        - krb5_free_principal
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:457,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:460,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:470,16'
          Dst:             krb5_cc_store_cred
    - functionName:    wrong_enctype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    try_fallback
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          161
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - begin_get_tgt
        - begin_non_referral
        - data_eq_string
        - krb5_free_data_contents
        - krb5_free_host_realm
        - krb5_get_fallback_host_realm
        - krb5int_trace
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:515,16'
          Dst:             begin_non_referral
        - Src:             'get_creds.c:523,12'
          Dst:             krb5_get_fallback_host_realm
        - Src:             'get_creds.c:529,9'
          Dst:             data_eq_string
        - Src:             'get_creds.c:530,9'
          Dst:             krb5_free_host_realm
        - Src:             'get_creds.c:531,16'
          Dst:             begin_non_referral
        - Src:             'get_creds.c:535,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:536,26'
          Dst:             string2data
        - Src:             'get_creds.c:538,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:542,12'
          Dst:             begin_get_tgt
    - functionName:    begin_non_referral
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_request_for_service
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:495,12'
          Dst:             make_request_for_service
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    begin_get_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          193
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - data_eq
        - end_get_tgt
        - get_cached_local_tgt
        - get_cached_tgt
        - get_tgt_request
        - init_realm_path
        - krb5_free_creds
        - krb5int_free_data_list
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:995,24'
          Dst:             data_eq
        - Src:             'get_creds.c:998,16'
          Dst:             get_cached_tgt
        - Src:             'get_creds.c:1002,13'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:1003,13'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:1005,20'
          Dst:             end_get_tgt
        - Src:             'get_creds.c:1010,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:1012,12'
          Dst:             get_cached_local_tgt
        - Src:             'get_creds.c:1015,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:1018,16'
          Dst:             end_get_tgt
        - Src:             'get_creds.c:1021,12'
          Dst:             init_realm_path
        - Src:             'get_creds.c:1026,5'
          Dst:             krb5int_free_data_list
        - Src:             'get_creds.c:1030,12'
          Dst:             get_tgt_request
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    get_cached_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          115
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cache_get
        - krb5_free_principal
        - krb5_timeofday
        - krb5int_tgtname
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:771,12'
          Dst:             krb5_timeofday
        - Src:             'get_creds.c:776,12'
          Dst:             krb5int_tgtname
        - Src:             'get_creds.c:789,12'
          Dst:             cache_get
        - Src:             'get_creds.c:791,5'
          Dst:             krb5_free_principal
    - functionName:    end_get_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - begin_non_referral
        - begin_referrals
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:666,16'
          Dst:             begin_referrals
        - Src:             'get_creds.c:668,16'
          Dst:             begin_non_referral
    - functionName:    get_cached_local_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          119
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - cache_get
        - krb5_free_creds
        - krb5_free_principal
        - krb5_timeofday
        - krb5int_tgtname
        - ts_after
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:810,12'
          Dst:             krb5_timeofday
        - Src:             'get_creds.c:815,12'
          Dst:             krb5int_tgtname
        - Src:             'get_creds.c:827,12'
          Dst:             cache_get
        - Src:             'get_creds.c:829,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:834,9'
          Dst:             ts_after
        - Src:             'get_creds.c:835,9'
          Dst:             krb5_free_creds
    - functionName:    init_realm_path
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - k5_client_realm_path
        - krb5int_free_data_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:853,12'
          Dst:             k5_client_realm_path
        - Src:             'get_creds.c:858,5'
          Dst:             __assert_fail
        - Src:             'get_creds.c:861,5'
          Dst:             krb5int_free_data_list
    - functionName:    get_tgt_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 891
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          110
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - end_get_tgt
        - get_cached_tgt
        - krb5_free_creds
        - krb5int_trace
        - make_request_for_tgt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:897,16'
          Dst:             get_cached_tgt
        - Src:             'get_creds.c:902,13'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:903,13'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:906,24'
          Dst:             end_get_tgt
        - Src:             'get_creds.c:912,16'
          Dst:             make_request_for_tgt
    - functionName:    make_request_for_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          109
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_principal
        - krb5int_tgtname
        - krb5int_trace
        - make_request
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:327,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:329,12'
          Dst:             krb5int_tgtname
        - Src:             'get_creds.c:334,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:343,12'
          Dst:             make_request
    - functionName:    make_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          136
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - empty_data
        - k5_make_tgs_req
        - krb5_c_valid_enctype
        - krb5_free_data_contents
        - krb5_free_keyblock
        - krb5int_fast_free_state
        - krb5int_fast_make_state
        - set_caller_request
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:290,25'
          Dst:             empty_data
        - Src:             'get_creds.c:295,10'
          Dst:             krb5_c_valid_enctype
        - Src:             'get_creds.c:299,5'
          Dst:             krb5int_fast_free_state
        - Src:             'get_creds.c:301,12'
          Dst:             krb5int_fast_make_state
        - Src:             'get_creds.c:305,5'
          Dst:             krb5_free_keyblock
        - Src:             'get_creds.c:307,12'
          Dst:             k5_make_tgs_req
        - Src:             'get_creds.c:314,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:316,12'
          Dst:             set_caller_request
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    set_caller_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - empty_data
        - krb5_free_data_contents
        - krb5int_copy_data_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:260,26'
          Dst:             empty_data
        - Src:             'get_creds.c:260,53'
          Dst:             empty_data
        - Src:             'get_creds.c:262,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_creds.c:265,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_creds.c:275,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:276,5'
          Dst:             krb5_free_data_contents
    - functionName:    cache_get
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_cc_retrieve_cred
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:125,12'
          Dst:             krb5_cc_retrieve_cred
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    begin_referrals
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_free_data_list
        - make_request_for_service
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:647,5'
          Dst:             krb5int_free_data_list
        - Src:             'get_creds.c:651,12'
          Dst:             make_request_for_service
    - functionName:    make_request_for_service
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - krb5int_trace
        - make_request
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:356,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:377,12'
          Dst:             make_request
    - functionName:    seen_realm_before
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - data_eq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:443,17'
          Dst:             data_eq
    - functionName:    begin_get_tgt_offpath
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_request_for_tgt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:725,12'
          Dst:             make_request_for_tgt
    - functionName:    find_realm_in_path
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - data_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:878,13'
          Dst:             data_eq
    - functionName:    remember_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          110
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - empty_data
        - krb5int_copy_data_contents
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:425,16'
          Dst:             realloc
        - Src:             'get_creds.c:429,21'
          Dst:             empty_data
        - Src:             'get_creds.c:430,25'
          Dst:             empty_data
        - Src:             'get_creds.c:431,12'
          Dst:             krb5int_copy_data_contents
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5_get_credentials
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1312
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - k5_get_proxy_cred_from_kdc
        - k5alloc
        - krb5_free_creds
        - krb5_tkt_creds_free
        - krb5_tkt_creds_get
        - krb5_tkt_creds_get_creds
        - krb5_tkt_creds_init
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1322,16'
          Dst:             k5_get_proxy_cred_from_kdc
        - Src:             'get_creds.c:1327,14'
          Dst:             k5alloc
        - Src:             'get_creds.c:1332,12'
          Dst:             krb5_tkt_creds_init
        - Src:             'get_creds.c:1335,12'
          Dst:             krb5_tkt_creds_get
        - Src:             'get_creds.c:1338,12'
          Dst:             krb5_tkt_creds_get_creds
        - Src:             'get_creds.c:1346,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:1347,5'
          Dst:             krb5_tkt_creds_free
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    krb5_tkt_creds_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1163
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          293
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - k5_canonprinc
        - k5alloc
        - krb5_cc_dup
        - krb5_cc_get_config
        - krb5_copy_authdata
        - krb5_copy_creds
        - krb5_copy_principal
        - krb5_tkt_creds_free
        - krb5int_copy_data_contents
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1101,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:1102,11'
          Dst:             k5alloc
        - Src:             'get_creds.c:1119,12'
          Dst:             krb5_copy_creds
        - Src:             'get_creds.c:1128,12'
          Dst:             k5_canonprinc
        - Src:             'get_creds.c:1133,12'
          Dst:             krb5_copy_principal
        - Src:             'get_creds.c:1139,12'
          Dst:             krb5_cc_dup
        - Src:             'get_creds.c:1145,12'
          Dst:             krb5_cc_get_config
        - Src:             'get_creds.c:1148,16'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_creds.c:1154,12'
          Dst:             krb5_copy_authdata
        - Src:             'get_creds.c:1162,5'
          Dst:             krb5_tkt_creds_free
    - functionName:    krb5_tkt_creds_get
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          138
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - empty_data
        - k5_sendto_kdc
        - krb5_free_data_contents
        - krb5_tkt_creds_step
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1211,25'
          Dst:             empty_data
        - Src:             'get_creds.c:1211,47'
          Dst:             empty_data
        - Src:             'get_creds.c:1212,23'
          Dst:             empty_data
        - Src:             'get_creds.c:1218,16'
          Dst:             krb5_tkt_creds_step
        - Src:             'get_creds.c:1221,13'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:1225,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1228,16'
          Dst:             k5_sendto_kdc
        - Src:             'get_creds.c:1233,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1234,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1237,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1238,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1239,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_tkt_creds_get_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1169
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_copy_creds_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1172,12'
          Dst:             k5_copy_creds_contents
    - functionName:    krb5_tkt_creds_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_canonprinc
        - krb5_cc_close
        - krb5_free_authdata
        - krb5_free_creds
        - krb5_free_data_contents
        - krb5_free_keyblock
        - krb5_free_principal
        - krb5int_fast_free_state
        - krb5int_free_data_list
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1190,5'
          Dst:             krb5int_fast_free_state
        - Src:             'get_creds.c:1191,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:1192,5'
          Dst:             free_canonprinc
        - Src:             'get_creds.c:1193,5'
          Dst:             krb5_cc_close
        - Src:             'get_creds.c:1194,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1195,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:1196,5'
          Dst:             krb5_free_authdata
        - Src:             'get_creds.c:1197,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:1198,5'
          Dst:             krb5int_free_data_list
        - Src:             'get_creds.c:1199,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:1200,5'
          Dst:             krb5_free_keyblock
        - Src:             'get_creds.c:1201,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1202,5'
          Dst:             krb5int_free_data_list
        - Src:             'get_creds.c:1203,5'
          Dst:             krb5_free_creds
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_tkt_creds_step
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1306
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          317
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - begin
        - check_cache
        - empty_data
        - get_creds_from_tgs_reply
        - k5_canonprinc
        - krb5_copy_principal
        - krb5_free_principal
        - step_get_tgt
        - step_get_tgt_offpath
        - step_non_referral
        - step_referrals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1252,12'
          Dst:             empty_data
        - Src:             'get_creds.c:1253,14'
          Dst:             empty_data
        - Src:             'get_creds.c:1263,16'
          Dst:             check_cache
        - Src:             'get_creds.c:1274,16'
          Dst:             get_creds_from_tgs_reply
        - Src:             'get_creds.c:1280,16'
          Dst:             begin
        - Src:             'get_creds.c:1282,16'
          Dst:             step_get_tgt
        - Src:             'get_creds.c:1284,16'
          Dst:             step_get_tgt_offpath
        - Src:             'get_creds.c:1286,16'
          Dst:             step_referrals
        - Src:             'get_creds.c:1288,16'
          Dst:             step_non_referral
        - Src:             'get_creds.c:1297,12'
          Dst:             k5_canonprinc
        - Src:             'get_creds.c:1302,5'
          Dst:             krb5_free_principal
        - Src:             'get_creds.c:1303,12'
          Dst:             krb5_copy_principal
        - Src:             'get_creds.c:1305,12'
          Dst:             begin
    - functionName:    check_cache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1043
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_get_cached_cred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1050,12'
          Dst:             k5_get_cached_cred
    - functionName:    get_creds_from_tgs_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          111
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_creds
        - krb5int_process_tgs_reply
        - krb5int_trace
        - set_caller_request
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:391,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:393,12'
          Dst:             krb5int_process_tgs_reply
        - Src:             'get_creds.c:401,16'
          Dst:             set_caller_request
        - Src:             'get_creds.c:409,5'
          Dst:             krb5int_trace
    - functionName:    begin
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - begin_get_tgt
        - krb5_free_data_contents
        - krb5_is_referral_realm
        - krb5int_copy_data_contents
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:1075,25'
          Dst:             krb5_is_referral_realm
        - Src:             'get_creds.c:1077,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:1078,16'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_creds.c:1080,9'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:1087,12'
          Dst:             begin_get_tgt
    - functionName:    step_get_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         50
      ICount:          307
      EdgeCount:       64
      CyclomaticComplexity: 16
      functionsReached:
        - begin_get_tgt_offpath
        - data_eq
        - data_eq_string
        - end_get_tgt
        - find_realm_in_path
        - get_tgt_request
        - krb5_cc_store_cred
        - krb5_free_creds
        - krb5int_trace
        - remember_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:932,9'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:935,14'
          Dst:             data_eq_string
        - Src:             'get_creds.c:939,9'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:945,16'
          Dst:             remember_realm
        - Src:             'get_creds.c:950,22'
          Dst:             find_realm_in_path
        - Src:             'get_creds.c:954,23'
          Dst:             krb5_cc_store_cred
        - Src:             'get_creds.c:957,17'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:958,24'
          Dst:             end_get_tgt
        - Src:             'get_creds.c:961,17'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:965,20'
          Dst:             data_eq
        - Src:             'get_creds.c:970,13'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:971,20'
          Dst:             begin_get_tgt_offpath
        - Src:             'get_creds.c:976,12'
          Dst:             get_tgt_request
    - functionName:    step_get_tgt_offpath
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          192
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - data_eq
        - data_eq_string
        - end_get_tgt
        - krb5_free_creds
        - krb5int_trace
        - make_request_for_tgt
        - remember_realm
        - seen_realm_before
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:691,10'
          Dst:             data_eq_string
        - Src:             'get_creds.c:695,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:701,9'
          Dst:             seen_realm_before
        - Src:             'get_creds.c:703,12'
          Dst:             remember_realm
        - Src:             'get_creds.c:707,9'
          Dst:             data_eq
        - Src:             'get_creds.c:709,9'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:710,16'
          Dst:             end_get_tgt
        - Src:             'get_creds.c:716,12'
          Dst:             make_request_for_tgt
    - functionName:    step_referrals
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          344
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - begin_non_referral
        - complete
        - data_eq
        - data_eq_string
        - krb5_free_authdata
        - krb5_free_creds
        - krb5_free_data_contents
        - krb5_principal_compare_any_realm
        - krb5int_copy_data_contents
        - krb5int_trace
        - make_request_for_service
        - remember_realm
        - seen_realm_before
        - try_fallback
        - wrong_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:570,16'
          Dst:             try_fallback
        - Src:             'get_creds.c:574,9'
          Dst:             krb5_principal_compare_any_realm
        - Src:             'get_creds.c:578,13'
          Dst:             wrong_enctype
        - Src:             'get_creds.c:579,13'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:580,20'
          Dst:             begin_non_referral
        - Src:             'get_creds.c:583,16'
          Dst:             complete
        - Src:             'get_creds.c:588,10'
          Dst:             data_eq_string
        - Src:             'get_creds.c:589,9'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:590,16'
          Dst:             begin_non_referral
        - Src:             'get_creds.c:596,9'
          Dst:             data_eq
        - Src:             'get_creds.c:597,9'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:598,16'
          Dst:             begin_non_referral
        - Src:             'get_creds.c:604,9'
          Dst:             krb5_free_authdata
        - Src:             'get_creds.c:613,9'
          Dst:             seen_realm_before
        - Src:             'get_creds.c:615,12'
          Dst:             remember_realm
        - Src:             'get_creds.c:620,5'
          Dst:             krb5_free_creds
        - Src:             'get_creds.c:623,5'
          Dst:             krb5int_trace
        - Src:             'get_creds.c:626,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_creds.c:627,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_creds.c:633,12'
          Dst:             make_request_for_service
    - functionName:    step_non_referral
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - complete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:487,12'
          Dst:             complete
    - functionName:    k5_get_cached_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cache_get
        - construct_matching_creds
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:146,12'
          Dst:             construct_matching_creds
        - Src:             'get_creds.c:151,12'
          Dst:             cache_get
    - functionName:    construct_matching_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          260
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - krb5_get_tgs_ktypes
        - krb5_timeofday
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_creds.c:63,11'
          Dst:             krb5_timeofday
        - Src:             'get_creds.c:79,15'
          Dst:             krb5_get_tgs_ktypes
    - functionName:    krb5_tkt_creds_get_times
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1178
      functionLinenumberEnd: 1183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    maybe_add_pac_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1328
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - encode_krb5_pa_pac_req
        - k5_add_pa_data_from_data
        - k5_gic_opt_pac_request
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1334,11'
          Dst:             k5_gic_opt_pac_request
        - Src:             'get_in_tkt.c:1339,12'
          Dst:             encode_krb5_pa_pac_req
        - Src:             'get_in_tkt.c:1342,12'
          Dst:             k5_add_pa_data_from_data
        - Src:             'get_in_tkt.c:1344,5'
          Dst:             krb5_free_data
    - functionName:    clear_cc_config_out_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1260
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_json_object_create
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1261,5'
          Dst:             k5_json_release
        - Src:             'get_in_tkt.c:1263,12'
          Dst:             k5_json_object_create
    - functionName:    read_cc_config_in_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          115
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - k5_gic_opt_get_in_ccache
        - k5_json_decode
        - k5_json_get_tid
        - k5_json_release
        - k5memdup0
        - krb5_cc_get_config
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1273,29'
          Dst:             k5_gic_opt_get_in_ccache
        - Src:             'get_in_tkt.c:1275,5'
          Dst:             k5_json_release
        - Src:             'get_in_tkt.c:1282,12'
          Dst:             krb5_cc_get_config
        - Src:             'get_in_tkt.c:1287,15'
          Dst:             k5memdup0
        - Src:             'get_in_tkt.c:1288,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:1292,12'
          Dst:             k5_json_decode
        - Src:             'get_in_tkt.c:1296,9'
          Dst:             k5_json_get_tid
        - Src:             'get_in_tkt.c:1297,9'
          Dst:             k5_json_release
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    set_request_times
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          138
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_init_creds_current_time
        - ts_after
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:711,12'
          Dst:             k5_init_creds_current_time
        - Src:             'get_in_tkt.c:716,12'
          Dst:             ts_incr
        - Src:             'get_in_tkt.c:720,26'
          Dst:             ts_incr
        - Src:             'get_in_tkt.c:724,31'
          Dst:             ts_incr
        - Src:             'get_in_tkt.c:725,13'
          Dst:             ts_after
    - functionName:    k5_init_creds_current_time
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          86
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5_time_with_offset
        - krb5_us_timeofday
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:695,16'
          Dst:             k5_time_with_offset
        - Src:             'get_in_tkt.c:699,16'
          Dst:             krb5_us_timeofday
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_interval
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_expiry_times
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1565
      functionLinenumberEnd: 1592
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    save_cc_config_out_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_encode
        - k5_json_object_count
        - krb5_cc_set_config
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1313,9'
          Dst:             k5_json_object_count
        - Src:             'get_in_tkt.c:1315,12'
          Dst:             k5_json_encode
        - Src:             'get_in_tkt.c:1318,14'
          Dst:             string2data
        - Src:             'get_in_tkt.c:1319,12'
          Dst:             krb5_cc_set_config
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    save_selected_preauth_type
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1242
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - asprintf
        - krb5_cc_set_config
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1249,9'
          Dst:             asprintf
        - Src:             'get_in_tkt.c:1251,19'
          Dst:             string2data
        - Src:             'get_in_tkt.c:1252,12'
          Dst:             krb5_cc_set_config
    - functionName:    ts_within
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2379
      functionLinenumberEnd: 2380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ts_after
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2380,25'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,13'
          Dst:             ts_after
        - Src:             '../../../include/k5-int.h:2380,56'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,44'
          Dst:             ts_after
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    warn_deprecated
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1674
      functionLinenumberEnd: 1696
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - dgettext
        - krb5_enctype_to_name
        - krb5int_c_deprecated_enctype
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1681,9'
          Dst:             krb5int_c_deprecated_enctype
        - Src:             'get_in_tkt.c:1683,14'
          Dst:             krb5int_c_deprecated_enctype
        - Src:             'get_in_tkt.c:1688,9'
          Dst:             krb5_enctype_to_name
        - Src:             'get_in_tkt.c:1691,14'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:1690,5'
          Dst:             snprintf
    - functionName:    warn_pw_expiry
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1603
      functionLinenumberEnd: 1667
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          213
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - dgettext
        - get_expiry_times
        - k5_gic_opt_get_expire_cb
        - krb5_timeofday
        - krb5_timestamp_to_string
        - snprintf
        - strcmp
        - ts_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1615,5'
          Dst:             get_expiry_times
        - Src:             'get_in_tkt.c:1617,5'
          Dst:             k5_gic_opt_get_expire_cb
        - Src:             'get_in_tkt.c:1629,27'
          Dst:             strcmp
        - Src:             'get_in_tkt.c:1637,11'
          Dst:             krb5_timeofday
        - Src:             'get_in_tkt.c:1640,16'
          Dst:             ts_interval
        - Src:             'get_in_tkt.c:1647,11'
          Dst:             krb5_timestamp_to_string
        - Src:             'get_in_tkt.c:1653,18'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:1652,9'
          Dst:             snprintf
        - Src:             'get_in_tkt.c:1657,18'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:1656,9'
          Dst:             snprintf
        - Src:             'get_in_tkt.c:1661,18'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:1660,9'
          Dst:             snprintf
    - functionName:    write_out_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1706
      functionLinenumberEnd: 1751
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          174
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - k5_cc_store_primary_cred
        - k5_gic_opt_get_out_ccache
        - krb5_cc_destroy
        - krb5_cc_initialize
        - krb5_cc_move
        - krb5_cc_new_unique
        - krb5_cc_set_config
        - save_cc_config_out_data
        - save_selected_preauth_type
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1708,30'
          Dst:             k5_gic_opt_get_out_ccache
        - Src:             'get_in_tkt.c:1710,21'
          Dst:             string2data
        - Src:             'get_in_tkt.c:1715,11'
          Dst:             krb5_cc_new_unique
        - Src:             'get_in_tkt.c:1719,11'
          Dst:             krb5_cc_initialize
        - Src:             'get_in_tkt.c:1724,15'
          Dst:             krb5_cc_set_config
        - Src:             'get_in_tkt.c:1730,11'
          Dst:             save_selected_preauth_type
        - Src:             'get_in_tkt.c:1734,11'
          Dst:             save_cc_config_out_data
        - Src:             'get_in_tkt.c:1738,11'
          Dst:             k5_cc_store_primary_cred
        - Src:             'get_in_tkt.c:1742,11'
          Dst:             krb5_cc_move
        - Src:             'get_in_tkt.c:1749,9'
          Dst:             krb5_cc_destroy
    - functionName:    stash_as_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          334
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - encode_krb5_ticket
        - krb5_cc_store_cred
        - krb5_copy_addresses
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_free_addresses
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:289,23'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:293,23'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:298,19'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'get_in_tkt.c:307,19'
          Dst:             krb5_copy_addresses
        - Src:             'get_in_tkt.c:314,19'
          Dst:             encode_krb5_ticket
        - Src:             'get_in_tkt.c:322,23'
          Dst:             krb5_cc_store_cred
        - Src:             'get_in_tkt.c:333,13'
          Dst:             krb5_free_principal
        - Src:             'get_in_tkt.c:335,13'
          Dst:             krb5_free_principal
        - Src:             'get_in_tkt.c:348,13'
          Dst:             krb5_free_addresses
    - functionName:    verify_anonymous
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          255
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - decode_krb5_enc_data
        - decode_krb5_encryption_key
        - dgettext
        - explicit_bzero
        - k5alloc
        - krb5_anonymous_principal
        - krb5_c_decrypt
        - krb5_c_fx_cf2_simple
        - krb5_free_enc_data
        - krb5_free_keyblock
        - krb5_principal_compare_any_realm
        - krb5_set_error_message
        - krb5int_find_pa_data
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:158,43'
          Dst:             krb5_anonymous_principal
        - Src:             'get_in_tkt.c:157,10'
          Dst:             krb5_principal_compare_any_realm
        - Src:             'get_in_tkt.c:160,10'
          Dst:             krb5int_find_pa_data
        - Src:             'get_in_tkt.c:165,11'
          Dst:             decode_krb5_enc_data
        - Src:             'get_in_tkt.c:168,20'
          Dst:             k5alloc
        - Src:             'get_in_tkt.c:172,11'
          Dst:             krb5_c_decrypt
        - Src:             'get_in_tkt.c:178,11'
          Dst:             decode_krb5_encryption_key
        - Src:             'get_in_tkt.c:179,5'
          Dst:             explicit_bzero
        - Src:             'get_in_tkt.c:183,11'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'get_in_tkt.c:189,10'
          Dst:             memcmp
        - Src:             'get_in_tkt.c:193,9'
          Dst:             krb5_free_keyblock
        - Src:             'get_in_tkt.c:195,9'
          Dst:             krb5_free_keyblock
        - Src:             'get_in_tkt.c:197,9'
          Dst:             krb5_free_enc_data
        - Src:             'get_in_tkt.c:202,15'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:201,5'
          Dst:             krb5_set_error_message
    - functionName:    verify_as_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         78
      ICount:          510
      EdgeCount:       108
      CyclomaticComplexity: 32
      functionsReached:
        - data_eq_string
        - krb5_principal_compare
        - krb5_set_time_offsets
        - ts_after
        - ts_delta
        - ts_within
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:231,20'
          Dst:             data_eq_string
        - Src:             'get_in_tkt.c:232,13'
          Dst:             data_eq_string
        - Src:             'get_in_tkt.c:237,11'
          Dst:             krb5_principal_compare
        - Src:             'get_in_tkt.c:238,28'
          Dst:             krb5_principal_compare
        - Src:             'get_in_tkt.c:239,13'
          Dst:             krb5_principal_compare
        - Src:             'get_in_tkt.c:247,13'
          Dst:             ts_after
        - Src:             'get_in_tkt.c:250,13'
          Dst:             ts_after
        - Src:             'get_in_tkt.c:255,13'
          Dst:             ts_after
        - Src:             'get_in_tkt.c:261,23'
          Dst:             ts_delta
        - Src:             'get_in_tkt.c:262,18'
          Dst:             krb5_set_time_offsets
        - Src:             'get_in_tkt.c:267,14'
          Dst:             ts_within
    - functionName:    ts_delta
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2348
      functionLinenumberEnd: 2349
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_as_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          321
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - k5_gic_opt_get_responder
        - k5_response_items_empty
        - krb5_free_keyblock_contents
        - krb5_kdc_rep_decrypt_proc
        - krb5int_fast_reply_key
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:62,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:63,15'
          Dst:             krb5int_fast_reply_key
        - Src:             'get_in_tkt.c:67,15'
          Dst:             krb5_kdc_rep_decrypt_proc
        - Src:             'get_in_tkt.c:72,9'
          Dst:             krb5_free_keyblock_contents
        - Src:             'get_in_tkt.c:73,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:96,9'
          Dst:             k5_gic_opt_get_responder
        - Src:             'get_in_tkt.c:107,18'
          Dst:             k5_response_items_empty
        - Src:             'get_in_tkt.c:117,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:124,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:126,11'
          Dst:             krb5int_fast_reply_key
        - Src:             'get_in_tkt.c:129,11'
          Dst:             krb5_kdc_rep_decrypt_proc
        - Src:             'get_in_tkt.c:131,9'
          Dst:             krb5_free_keyblock_contents
    - functionName:    sort_krb5_padata_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          227
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - krb5int_libdefault_string
        - strspn
        - strtol
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:418,11'
          Dst:             krb5int_libdefault_string
        - Src:             'get_in_tkt.c:437,14'
          Dst:             strspn
        - Src:             'get_in_tkt.c:440,17'
          Dst:             strtol
    - functionName:    strtol
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_reply_enctype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1502
      functionLinenumberEnd: 1510
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_referral
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_realm_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1545,13'
          Dst:             krb5_realm_compare
    - functionName:    accept_method_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1552
      functionLinenumberEnd: 1557
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_pa_data
        - sort_krb5_padata_sequence
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1553,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1556,12'
          Dst:             sort_krb5_padata_sequence
    - functionName:    note_req_timestamp
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1527
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_time_with_offset
        - ts_delta
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1521,9'
          Dst:             k5_time_with_offset
        - Src:             'get_in_tkt.c:1523,22'
          Dst:             ts_delta
    - functionName:    init_creds_validate_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          261
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - __assert_fail
        - decode_krb5_as_rep
        - decode_krb5_error
        - krb5_free_error
        - krb5_free_kdc_rep
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1175,5'
          Dst:             krb5_free_error
        - Src:             'get_in_tkt.c:1178,5'
          Dst:             krb5_free_kdc_rep
        - Src:             'get_in_tkt.c:1182,16'
          Dst:             decode_krb5_error
        - Src:             'get_in_tkt.c:1186,9'
          Dst:             __assert_fail
        - Src:             'get_in_tkt.c:1188,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1191,13'
          Dst:             krb5_free_error
        - Src:             'get_in_tkt.c:1225,12'
          Dst:             decode_krb5_as_rep
        - Src:             'get_in_tkt.c:1230,9'
          Dst:             krb5_free_kdc_rep
    - functionName:    read_allowed_preauth_type
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          101
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5_gic_opt_get_in_ccache
        - k5memdup0
        - krb5_cc_get_config
        - krb5_free_data_contents
        - strtol
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:741,29'
          Dst:             k5_gic_opt_get_in_ccache
        - Src:             'get_in_tkt.c:747,9'
          Dst:             krb5_cc_get_config
        - Src:             'get_in_tkt.c:750,11'
          Dst:             k5memdup0
        - Src:             'get_in_tkt.c:751,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:754,33'
          Dst:             strtol
    - functionName:    build_in_tkt_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          109
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_build_principal_ext
        - krb5_free_data_contents
        - krb5_free_principal
        - krb5_parse_name_flags
        - krb5int_copy_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:485,15'
          Dst:             krb5_parse_name_flags
        - Src:             'get_in_tkt.c:490,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:491,15'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:494,13'
          Dst:             krb5_free_principal
        - Src:             'get_in_tkt.c:498,15'
          Dst:             krb5_build_principal_ext
    - functionName:    encts_disabled
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5memdup0
        - profile_get_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:768,16'
          Dst:             k5memdup0
        - Src:             'get_in_tkt.c:771,11'
          Dst:             profile_get_boolean
    - functionName:    make_preauth_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          164
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auto_fast_armor_enabled
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5memdup0
        - profile_get_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:786,16'
          Dst:             k5memdup0
        - Src:             'get_in_tkt.c:789,11'
          Dst:             profile_get_boolean
    - functionName:    k5_populate_gic_opt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2200
      functionLinenumberEnd: 2244
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          236
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - k5_count_etypes
        - krb5_get_init_creds_opt_alloc
        - krb5_get_init_creds_opt_free
        - krb5_get_init_creds_opt_set_address_list
        - krb5_get_init_creds_opt_set_etype_list
        - krb5_get_init_creds_opt_set_forwardable
        - krb5_get_init_creds_opt_set_preauth_list
        - krb5_get_init_creds_opt_set_proxiable
        - krb5_get_init_creds_opt_set_tkt_life
        - krb5_timeofday
        - ts_delta
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:2208,14'
          Dst:             krb5_get_init_creds_opt_alloc
        - Src:             'get_in_tkt.c:2213,9'
          Dst:             krb5_get_init_creds_opt_set_address_list
        - Src:             'get_in_tkt.c:2215,13'
          Dst:             k5_count_etypes
        - Src:             'get_in_tkt.c:2217,13'
          Dst:             krb5_get_init_creds_opt_set_etype_list
        - Src:             'get_in_tkt.c:2222,13'
          Dst:             krb5_get_init_creds_opt_set_preauth_list
        - Src:             'get_in_tkt.c:2225,9'
          Dst:             krb5_get_init_creds_opt_set_forwardable
        - Src:             'get_in_tkt.c:2226,10'
          Dst:             krb5_get_init_creds_opt_set_forwardable
        - Src:             'get_in_tkt.c:2228,9'
          Dst:             krb5_get_init_creds_opt_set_proxiable
        - Src:             'get_in_tkt.c:2229,10'
          Dst:             krb5_get_init_creds_opt_set_proxiable
        - Src:             'get_in_tkt.c:2231,18'
          Dst:             krb5_timeofday
        - Src:             'get_in_tkt.c:2235,20'
          Dst:             ts_delta
        - Src:             'get_in_tkt.c:2236,9'
          Dst:             krb5_get_init_creds_opt_set_tkt_life
        - Src:             'get_in_tkt.c:2242,5'
          Dst:             krb5_get_init_creds_opt_free
    - functionName:    k5_identify_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2159
      functionLinenumberEnd: 2192
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_init_creds_get
        - krb5_copy_principal
        - krb5_get_init_creds_opt_alloc
        - krb5_get_init_creds_opt_free
        - krb5_get_init_creds_opt_set_canonicalize
        - krb5_get_init_creds_opt_set_forwardable
        - krb5_get_init_creds_opt_set_proxiable
        - krb5_get_init_creds_opt_set_renew_life
        - krb5_get_init_creds_opt_set_tkt_life
        - krb5_init_creds_free
        - krb5_init_creds_init
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:2166,11'
          Dst:             krb5_get_init_creds_opt_alloc
        - Src:             'get_in_tkt.c:2169,5'
          Dst:             krb5_get_init_creds_opt_set_tkt_life
        - Src:             'get_in_tkt.c:2170,5'
          Dst:             krb5_get_init_creds_opt_set_renew_life
        - Src:             'get_in_tkt.c:2171,5'
          Dst:             krb5_get_init_creds_opt_set_forwardable
        - Src:             'get_in_tkt.c:2172,5'
          Dst:             krb5_get_init_creds_opt_set_proxiable
        - Src:             'get_in_tkt.c:2173,5'
          Dst:             krb5_get_init_creds_opt_set_canonicalize
        - Src:             'get_in_tkt.c:2175,11'
          Dst:             krb5_init_creds_init
        - Src:             'get_in_tkt.c:2182,11'
          Dst:             k5_init_creds_get
        - Src:             'get_in_tkt.c:2186,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:2187,11'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:2190,5'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'get_in_tkt.c:2191,5'
          Dst:             krb5_init_creds_free
    - functionName:    krb5_init_creds_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         116
      ICount:          886
      EdgeCount:       157
      CyclomaticComplexity: 43
      functionsReached:
        - begin_auto_armor
        - empty_data
        - k5_count_etypes
        - k5_response_items_new
        - k5alloc
        - k5memdup
        - krb5_anonymous_principal
        - krb5_build_principal_ext
        - krb5_copy_addresses
        - krb5_copy_principal
        - krb5_free_principal
        - krb5_get_default_in_tkt_ktypes
        - krb5_get_init_creds_opt_init
        - krb5_init_creds_free
        - krb5_os_localaddr
        - krb5_principal_compare_any_realm
        - krb5_string_to_deltat
        - krb5int_copy_data_contents
        - krb5int_libdefault_boolean
        - krb5int_libdefault_string
        - krb5int_trace
        - want_auto_armor
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:949,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:951,11'
          Dst:             k5alloc
        - Src:             'get_in_tkt.c:955,20'
          Dst:             k5alloc
        - Src:             'get_in_tkt.c:959,12'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:972,9'
          Dst:             krb5_get_init_creds_opt_init
        - Src:             'get_in_tkt.c:977,12'
          Dst:             k5_response_items_new
        - Src:             'get_in_tkt.c:987,14'
          Dst:             krb5int_libdefault_boolean
        - Src:             'get_in_tkt.c:998,14'
          Dst:             krb5int_libdefault_boolean
        - Src:             'get_in_tkt.c:1009,14'
          Dst:             krb5int_libdefault_boolean
        - Src:             'get_in_tkt.c:1024,14'
          Dst:             krb5int_libdefault_string
        - Src:             'get_in_tkt.c:1026,16'
          Dst:             krb5_string_to_deltat
        - Src:             'get_in_tkt.c:1037,14'
          Dst:             krb5int_libdefault_string
        - Src:             'get_in_tkt.c:1039,16'
          Dst:             krb5_string_to_deltat
        - Src:             'get_in_tkt.c:1053,13'
          Dst:             k5memdup
        - Src:             'get_in_tkt.c:1059,16'
          Dst:             krb5_get_default_in_tkt_ktypes
        - Src:             'get_in_tkt.c:1061,33'
          Dst:             k5_count_etypes
        - Src:             'get_in_tkt.c:1078,16'
          Dst:             krb5_copy_addresses
        - Src:             'get_in_tkt.c:1082,16'
          Dst:             krb5int_libdefault_boolean
        - Src:             'get_in_tkt.c:1087,16'
          Dst:             krb5_os_localaddr
        - Src:             'get_in_tkt.c:1093,16'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:1098,21'
          Dst:             empty_data
        - Src:             'get_in_tkt.c:1108,20'
          Dst:             krb5_build_principal_ext
        - Src:             'get_in_tkt.c:1118,13'
          Dst:             krb5_free_principal
        - Src:             'get_in_tkt.c:1126,42'
          Dst:             krb5_anonymous_principal
        - Src:             'get_in_tkt.c:1125,9'
          Dst:             krb5_principal_compare_any_realm
        - Src:             'get_in_tkt.c:1131,9'
          Dst:             want_auto_armor
        - Src:             'get_in_tkt.c:1132,16'
          Dst:             begin_auto_armor
        - Src:             'get_in_tkt.c:1141,5'
          Dst:             krb5_init_creds_free
    - functionName:    k5_init_creds_get
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - k5_sendto_kdc
        - krb5_free_data_contents
        - krb5_init_creds_step
        - krb5int_trace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:568,16'
          Dst:             krb5_init_creds_step
        - Src:             'get_in_tkt.c:575,13'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:580,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:582,16'
          Dst:             k5_sendto_kdc
        - Src:             'get_in_tkt.c:587,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:588,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:591,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:592,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:593,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_init_creds_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          156
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_release
        - k5_preauth_request_context_fini
        - k5_response_items_free
        - krb5_cc_destroy
        - krb5_free_cred_contents
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_free_error
        - krb5_free_kdc_rep
        - krb5_free_kdc_req
        - krb5_free_keyblock_contents
        - krb5_free_pa_data
        - krb5_get_init_creds_opt_free
        - krb5_init_creds_free
        - krb5int_fast_free_state
        - zapfree
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:521,5'
          Dst:             k5_response_items_free
        - Src:             'get_in_tkt.c:523,5'
          Dst:             zapfree
        - Src:             'get_in_tkt.c:524,5'
          Dst:             k5_preauth_request_context_fini
        - Src:             'get_in_tkt.c:525,5'
          Dst:             krb5_free_error
        - Src:             'get_in_tkt.c:526,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:527,5'
          Dst:             krb5_free_cred_contents
        - Src:             'get_in_tkt.c:528,5'
          Dst:             krb5_free_kdc_req
        - Src:             'get_in_tkt.c:529,5'
          Dst:             krb5_free_kdc_rep
        - Src:             'get_in_tkt.c:530,5'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:531,5'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:532,5'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:533,5'
          Dst:             krb5int_fast_free_state
        - Src:             'get_in_tkt.c:534,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:535,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:536,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:537,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:538,5'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:539,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'get_in_tkt.c:540,5'
          Dst:             krb5_init_creds_free
        - Src:             'get_in_tkt.c:541,5'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'get_in_tkt.c:543,9'
          Dst:             krb5_cc_destroy
        - Src:             'get_in_tkt.c:544,5'
          Dst:             k5_json_release
        - Src:             'get_in_tkt.c:545,5'
          Dst:             k5_json_release
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    krb5_init_creds_step
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1967
      functionLinenumberEnd: 2055
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          315
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - dgettext
        - init_creds_step_reply
        - init_creds_step_request
        - k5_preauth_check_context
        - krb5_free_unparsed_name
        - krb5_init_creds_free
        - krb5_init_creds_step
        - krb5_set_error_message
        - krb5_unparse_name
        - krb5int_copy_data_contents
        - restart_init_creds_loop
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1981,12'
          Dst:             k5_preauth_check_context
        - Src:             'get_in_tkt.c:1987,16'
          Dst:             krb5_init_creds_step
        - Src:             'get_in_tkt.c:1994,9'
          Dst:             krb5_init_creds_free
        - Src:             'get_in_tkt.c:1998,16'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:2002,16'
          Dst:             init_creds_step_reply
        - Src:             'get_in_tkt.c:2004,21'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:2016,16'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:2021,12'
          Dst:             init_creds_step_request
        - Src:             'get_in_tkt.c:2029,5'
          Dst:             __assert_fail
        - Src:             'get_in_tkt.c:2031,13'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:2044,17'
          Dst:             krb5_unparse_name
        - Src:             'get_in_tkt.c:2047,23'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:2046,13'
          Dst:             krb5_set_error_message
        - Src:             'get_in_tkt.c:2049,13'
          Dst:             krb5_free_unparsed_name
    - functionName:    restart_init_creds_loop
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          275
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - build_in_tkt_name
        - encts_disabled
        - k5_preauth_prepare_request
        - k5_preauth_request_context_fini
        - k5_preauth_request_context_init
        - krb5_free_data
        - krb5_free_error
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5int_fast_as_armor
        - krb5int_fast_free_state
        - krb5int_fast_make_state
        - krb5int_fast_prep_req_body
        - make_preauth_list
        - read_allowed_preauth_type
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:870,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:871,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:872,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:873,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:874,5'
          Dst:             krb5_free_error
        - Src:             'get_in_tkt.c:880,5'
          Dst:             krb5int_fast_free_state
        - Src:             'get_in_tkt.c:882,12'
          Dst:             krb5int_fast_make_state
        - Src:             'get_in_tkt.c:888,5'
          Dst:             k5_preauth_request_context_fini
        - Src:             'get_in_tkt.c:889,5'
          Dst:             k5_preauth_request_context_init
        - Src:             'get_in_tkt.c:890,5'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:893,16'
          Dst:             make_preauth_list
        - Src:             'get_in_tkt.c:902,9'
          Dst:             encts_disabled
        - Src:             'get_in_tkt.c:905,5'
          Dst:             krb5_free_principal
        - Src:             'get_in_tkt.c:908,12'
          Dst:             build_in_tkt_name
        - Src:             'get_in_tkt.c:914,12'
          Dst:             krb5int_fast_as_armor
        - Src:             'get_in_tkt.c:919,5'
          Dst:             k5_preauth_prepare_request
        - Src:             'get_in_tkt.c:921,12'
          Dst:             krb5int_fast_prep_req_body
        - Src:             'get_in_tkt.c:929,5'
          Dst:             read_allowed_preauth_type
    - functionName:    init_creds_step_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1951
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         127
      ICount:          854
      EdgeCount:       170
      CyclomaticComplexity: 45
      functionsReached:
        - __assert_fail
        - accept_method_data
        - check_reply_enctype
        - decrypt_as_reply
        - dgettext
        - init_creds_validate_reply
        - is_referral
        - k5_preauth
        - k5_preauth_note_failed
        - k5_preauth_request_context_fini
        - k5_upgrade_to_fast_p
        - krb5_free_data_contents
        - krb5_free_keyblock
        - krb5_free_keyblock_contents
        - krb5_free_pa_data
        - krb5_prepend_error_message
        - krb5_principal2salt
        - krb5int_copy_data_contents
        - krb5int_fast_process_error
        - krb5int_fast_process_response
        - krb5int_fast_verify_nego
        - krb5int_trace
        - note_req_timestamp
        - restart_init_creds_loop
        - sort_krb5_padata_sequence
        - stash_as_reply
        - verify_anonymous
        - verify_as_reply
        - warn_deprecated
        - warn_pw_expiry
        - write_out_ccache
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1772,12'
          Dst:             init_creds_validate_reply
        - Src:             'get_in_tkt.c:1781,9'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1782,9'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1784,16'
          Dst:             krb5int_fast_process_error
        - Src:             'get_in_tkt.c:1791,13'
          Dst:             k5_upgrade_to_fast_p
        - Src:             'get_in_tkt.c:1794,13'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1796,20'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:1803,20'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:1808,20'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:1816,13'
          Dst:             note_req_timestamp
        - Src:             'get_in_tkt.c:1818,20'
          Dst:             accept_method_data
        - Src:             'get_in_tkt.c:1820,13'
          Dst:             note_req_timestamp
        - Src:             'get_in_tkt.c:1823,20'
          Dst:             k5_preauth_note_failed
        - Src:             'get_in_tkt.c:1829,24'
          Dst:             accept_method_data
        - Src:             'get_in_tkt.c:1833,34'
          Dst:             is_referral
        - Src:             'get_in_tkt.c:1835,13'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1837,13'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:1838,20'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:1846,20'
          Dst:             restart_init_creds_loop
        - Src:             'get_in_tkt.c:1861,5'
          Dst:             __assert_fail
        - Src:             'get_in_tkt.c:1864,12'
          Dst:             check_reply_enctype
        - Src:             'get_in_tkt.c:1869,12'
          Dst:             krb5int_fast_process_response
        - Src:             'get_in_tkt.c:1880,12'
          Dst:             sort_krb5_padata_sequence
        - Src:             'get_in_tkt.c:1890,12'
          Dst:             k5_preauth
        - Src:             'get_in_tkt.c:1906,16'
          Dst:             krb5_principal2salt
        - Src:             'get_in_tkt.c:1907,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1912,12'
          Dst:             decrypt_as_reply
        - Src:             'get_in_tkt.c:1915,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1917,12'
          Dst:             krb5int_fast_verify_nego
        - Src:             'get_in_tkt.c:1922,12'
          Dst:             verify_as_reply
        - Src:             'get_in_tkt.c:1926,12'
          Dst:             verify_anonymous
        - Src:             'get_in_tkt.c:1931,12'
          Dst:             stash_as_reply
        - Src:             'get_in_tkt.c:1934,12'
          Dst:             write_out_ccache
        - Src:             'get_in_tkt.c:1936,38'
          Dst:             dgettext
        - Src:             'get_in_tkt.c:1936,9'
          Dst:             krb5_prepend_error_message
        - Src:             'get_in_tkt.c:1938,5'
          Dst:             k5_preauth_request_context_fini
        - Src:             'get_in_tkt.c:1942,5'
          Dst:             warn_pw_expiry
        - Src:             'get_in_tkt.c:1944,5'
          Dst:             warn_deprecated
        - Src:             'get_in_tkt.c:1947,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1948,5'
          Dst:             krb5_free_keyblock
        - Src:             'get_in_tkt.c:1949,5'
          Dst:             krb5_free_keyblock_contents
    - functionName:    init_creds_step_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1496
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          620
      EdgeCount:       135
      CyclomaticComplexity: 36
      functionsReached:
        - clear_cc_config_out_data
        - encode_krb5_as_req
        - encode_krb5_kdc_req_body
        - k5_add_empty_pa_data
        - k5_add_pa_data_from_data
        - k5_clear_error
        - k5_generate_nonce
        - k5_preauth
        - k5_preauth_tryagain
        - k5_restore_ctx_error
        - k5_save_ctx_error
        - krb5_clear_error_message
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_free_pa_data
        - krb5int_copy_data_contents
        - krb5int_fast_prep_req
        - krb5int_trace
        - maybe_add_pac_request
        - read_cc_config_in_data
        - set_request_times
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1365,12'
          Dst:             k5_generate_nonce
        - Src:             'get_in_tkt.c:1370,12'
          Dst:             set_request_times
        - Src:             'get_in_tkt.c:1374,5'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:1376,12'
          Dst:             encode_krb5_kdc_req_body
        - Src:             'get_in_tkt.c:1385,5'
          Dst:             read_cc_config_in_data
        - Src:             'get_in_tkt.c:1386,5'
          Dst:             clear_cc_config_out_data
        - Src:             'get_in_tkt.c:1391,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1392,16'
          Dst:             k5_preauth
        - Src:             'get_in_tkt.c:1394,9'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1398,13'
          Dst:             krb5_clear_error_message
        - Src:             'get_in_tkt.c:1403,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1404,16'
          Dst:             k5_preauth
        - Src:             'get_in_tkt.c:1412,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1414,16'
          Dst:             k5_preauth_tryagain
        - Src:             'get_in_tkt.c:1418,13'
          Dst:             krb5_clear_error_message
        - Src:             'get_in_tkt.c:1427,9'
          Dst:             k5_save_ctx_error
        - Src:             'get_in_tkt.c:1434,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1435,16'
          Dst:             k5_preauth
        - Src:             'get_in_tkt.c:1439,24'
          Dst:             k5_restore_ctx_error
        - Src:             'get_in_tkt.c:1444,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1447,25'
          Dst:             time
        - Src:             'get_in_tkt.c:1450,9'
          Dst:             krb5_free_data
        - Src:             'get_in_tkt.c:1454,16'
          Dst:             k5_add_empty_pa_data
        - Src:             'get_in_tkt.c:1458,16'
          Dst:             k5_add_empty_pa_data
        - Src:             'get_in_tkt.c:1465,16'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:1468,16'
          Dst:             k5_add_pa_data_from_data
        - Src:             'get_in_tkt.c:1470,9'
          Dst:             krb5_free_data_contents
        - Src:             'get_in_tkt.c:1475,12'
          Dst:             maybe_add_pac_request
        - Src:             'get_in_tkt.c:1479,12'
          Dst:             krb5int_fast_prep_req
        - Src:             'get_in_tkt.c:1479,12'
          Dst:             encode_krb5_as_req
        - Src:             'get_in_tkt.c:1486,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:1493,5'
          Dst:             krb5_free_pa_data
        - Src:             'get_in_tkt.c:1495,5'
          Dst:             k5_clear_error
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    want_auto_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 811
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - auto_fast_armor_enabled
        - k5_gic_opt_get_fast_ccache_name
        - krb5_anonymous_principal
        - krb5_principal_compare_any_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:804,9'
          Dst:             k5_gic_opt_get_fast_ccache_name
        - Src:             'get_in_tkt.c:807,42'
          Dst:             krb5_anonymous_principal
        - Src:             'get_in_tkt.c:806,9'
          Dst:             krb5_principal_compare_any_realm
        - Src:             'get_in_tkt.c:809,12'
          Dst:             auto_fast_armor_enabled
    - functionName:    begin_auto_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          142
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_build_principal_ext
        - krb5_cc_new_unique
        - krb5_free_principal
        - krb5_get_init_creds_opt_alloc
        - krb5_get_init_creds_opt_set_anonymous
        - krb5_get_init_creds_opt_set_out_ccache
        - krb5_get_init_creds_opt_set_tkt_life
        - krb5_init_creds_init
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:822,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:824,11'
          Dst:             krb5_cc_new_unique
        - Src:             'get_in_tkt.c:828,11'
          Dst:             krb5_build_principal_ext
        - Src:             'get_in_tkt.c:838,11'
          Dst:             krb5_get_init_creds_opt_alloc
        - Src:             'get_in_tkt.c:841,5'
          Dst:             krb5_get_init_creds_opt_set_anonymous
        - Src:             'get_in_tkt.c:842,5'
          Dst:             krb5_get_init_creds_opt_set_tkt_life
        - Src:             'get_in_tkt.c:843,11'
          Dst:             krb5_get_init_creds_opt_set_out_ccache
        - Src:             'get_in_tkt.c:848,11'
          Dst:             krb5_init_creds_init
        - Src:             'get_in_tkt.c:855,5'
          Dst:             krb5_free_principal
    - functionName:    try_init_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2064
      functionLinenumberEnd: 2103
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - k5_init_creds_get
        - krb5_init_creds_free
        - krb5_init_creds_get_creds
        - krb5_init_creds_init
        - krb5_init_creds_set_service
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:2068,12'
          Dst:             krb5_init_creds_init
        - Src:             'get_in_tkt.c:2082,16'
          Dst:             krb5_init_creds_set_service
        - Src:             'get_in_tkt.c:2087,12'
          Dst:             k5_init_creds_get
        - Src:             'get_in_tkt.c:2091,12'
          Dst:             krb5_init_creds_get_creds
        - Src:             'get_in_tkt.c:2101,5'
          Dst:             krb5_init_creds_free
    - functionName:    krb5_init_creds_set_service
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_trace
        - restart_init_creds_loop
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:1154,5'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:1156,9'
          Dst:             strdup
        - Src:             'get_in_tkt.c:1163,12'
          Dst:             restart_init_creds_loop
    - functionName:    krb5_init_creds_get_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_copy_creds_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:614,12'
          Dst:             k5_copy_creds_contents
    - functionName:    k5_get_init_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2113
      functionLinenumberEnd: 2153
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          191
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - k5_clear_error
        - k5_kdclist_any_replicas
        - k5_kdclist_create
        - k5_kdclist_free
        - k5_restore_ctx_error
        - k5_save_ctx_error
        - krb5int_trace
        - try_init_creds
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:2118,11'
          Dst:             k5_kdclist_create
        - Src:             'get_in_tkt.c:2123,11'
          Dst:             try_init_creds
        - Src:             'get_in_tkt.c:2136,9'
          Dst:             k5_kdclist_any_replicas
        - Src:             'get_in_tkt.c:2137,9'
          Dst:             k5_save_ctx_error
        - Src:             'get_in_tkt.c:2138,9'
          Dst:             krb5int_trace
        - Src:             'get_in_tkt.c:2139,15'
          Dst:             try_init_creds
        - Src:             'get_in_tkt.c:2146,19'
          Dst:             k5_restore_ctx_error
        - Src:             'get_in_tkt.c:2151,5'
          Dst:             k5_kdclist_free
        - Src:             'get_in_tkt.c:2152,5'
          Dst:             k5_clear_error
    - functionName:    krb5_init_creds_get_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          197
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - k5alloc
        - krb5_copy_principal
        - krb5_free_error
        - krb5int_copy_data_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:643,11'
          Dst:             k5alloc
        - Src:             'get_in_tkt.c:655,16'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:661,12'
          Dst:             krb5_copy_principal
        - Src:             'get_in_tkt.c:665,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:670,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'get_in_tkt.c:679,9'
          Dst:             krb5_free_error
    - functionName:    krb5_init_creds_get_times
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_init_creds_get
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/get_in_tkt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_init_creds_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'get_in_tkt.c:603,12'
          Dst:             k5_init_creds_get
    - functionName:    krb5_get_in_tkt_with_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          186
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - get_as_key_keytab
        - k5_get_init_creds
        - k5_populate_gic_opt
        - krb5_cc_store_cred
        - krb5_free_principal
        - krb5_free_unparsed_name
        - krb5_get_init_creds_opt_free
        - krb5_kt_close
        - krb5_kt_default
        - krb5_prompter_posix
        - krb5_unparse_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:355,14'
          Dst:             k5_populate_gic_opt
        - Src:             'gic_keytab.c:361,18'
          Dst:             krb5_kt_default
        - Src:             'gic_keytab.c:367,14'
          Dst:             krb5_unparse_name
        - Src:             'gic_keytab.c:372,14'
          Dst:             k5_get_init_creds
        - Src:             'gic_keytab.c:372,14'
          Dst:             krb5_prompter_posix
        - Src:             'gic_keytab.c:372,14'
          Dst:             get_as_key_keytab
        - Src:             'gic_keytab.c:376,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'gic_keytab.c:380,5'
          Dst:             krb5_free_principal
        - Src:             'gic_keytab.c:381,5'
          Dst:             krb5_free_principal
        - Src:             'gic_keytab.c:387,23'
          Dst:             krb5_cc_store_cred
        - Src:             'gic_keytab.c:390,5'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'gic_keytab.c:392,9'
          Dst:             krb5_kt_close
    - functionName:    get_as_key_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          115
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_c_valid_enctype
        - krb5_free_keyblock_contents
        - krb5_kt_free_entry
        - krb5_kt_get_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:61,9'
          Dst:             krb5_free_keyblock_contents
        - Src:             'gic_keytab.c:65,10'
          Dst:             krb5_c_valid_enctype
        - Src:             'gic_keytab.c:68,16'
          Dst:             krb5_kt_get_entry
        - Src:             'gic_keytab.c:77,12'
          Dst:             krb5_kt_free_entry
    - functionName:    get_init_creds_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          118
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - k5_init_creds_get
        - krb5_init_creds_free
        - krb5_init_creds_get_creds
        - krb5_init_creds_init
        - krb5_init_creds_set_keytab
        - krb5_init_creds_set_service
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:244,11'
          Dst:             krb5_init_creds_init
        - Src:             'gic_keytab.c:250,15'
          Dst:             krb5_init_creds_set_service
        - Src:             'gic_keytab.c:255,11'
          Dst:             krb5_init_creds_set_keytab
        - Src:             'gic_keytab.c:259,11'
          Dst:             k5_init_creds_get
        - Src:             'gic_keytab.c:263,11'
          Dst:             krb5_init_creds_get_creds
        - Src:             'gic_keytab.c:268,5'
          Dst:             krb5_init_creds_free
    - functionName:    krb5_init_creds_set_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          248
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - dgettext
        - free_canonprinc
        - k5_canonprinc
        - krb5_copy_principal
        - krb5_free_principal
        - krb5_free_unparsed_name
        - krb5_set_error_message
        - krb5_unparse_name
        - krb5int_trace
        - lookup_etypes_for_keytab
        - sort_enctypes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:193,19'
          Dst:             k5_canonprinc
        - Src:             'gic_keytab.c:195,15'
          Dst:             lookup_etypes_for_keytab
        - Src:             'gic_keytab.c:202,15'
          Dst:             krb5_copy_principal
        - Src:             'gic_keytab.c:204,13'
          Dst:             krb5_free_principal
        - Src:             'gic_keytab.c:208,5'
          Dst:             free_canonprinc
        - Src:             'gic_keytab.c:210,9'
          Dst:             krb5int_trace
        - Src:             'gic_keytab.c:214,5'
          Dst:             krb5int_trace
        - Src:             'gic_keytab.c:218,15'
          Dst:             krb5_unparse_name
        - Src:             'gic_keytab.c:221,23'
          Dst:             dgettext
        - Src:             'gic_keytab.c:220,13'
          Dst:             krb5_set_error_message
        - Src:             'gic_keytab.c:223,9'
          Dst:             krb5_free_unparsed_name
        - Src:             'gic_keytab.c:228,11'
          Dst:             sort_enctypes
    - functionName:    lookup_etypes_for_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          189
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - krb5_c_valid_enctype
        - krb5_free_keytab_entry_contents
        - krb5_kt_end_seq_get
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
        - krb5_principal_compare
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:100,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'gic_keytab.c:104,20'
          Dst:             krb5_kt_next_entry
        - Src:             'gic_keytab.c:108,17'
          Dst:             krb5_principal_compare
        - Src:             'gic_keytab.c:109,9'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'gic_keytab.c:112,42'
          Dst:             krb5_c_valid_enctype
        - Src:             'gic_keytab.c:124,13'
          Dst:             realloc
        - Src:             'gic_keytab.c:141,5'
          Dst:             krb5_kt_end_seq_get
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sort_enctypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          140
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - k5_etypes_contains
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:161,13'
          Dst:             k5_etypes_contains
        - Src:             'gic_keytab.c:170,5'
          Dst:             __assert_fail
    - functionName:    krb5_get_init_creds_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_keytab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          192
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - get_init_creds_keytab
        - k5_clear_error
        - k5_kdclist_any_replicas
        - k5_kdclist_create
        - k5_kdclist_free
        - k5_restore_ctx_error
        - k5_save_ctx_error
        - krb5_kt_close
        - krb5_kt_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_keytab.c:288,20'
          Dst:             krb5_kt_default
        - Src:             'gic_keytab.c:294,11'
          Dst:             k5_kdclist_create
        - Src:             'gic_keytab.c:300,11'
          Dst:             get_init_creds_keytab
        - Src:             'gic_keytab.c:316,10'
          Dst:             k5_kdclist_any_replicas
        - Src:             'gic_keytab.c:317,9'
          Dst:             k5_save_ctx_error
        - Src:             'gic_keytab.c:318,15'
          Dst:             get_init_creds_keytab
        - Src:             'gic_keytab.c:328,19'
          Dst:             k5_restore_ctx_error
        - Src:             'gic_keytab.c:336,9'
          Dst:             krb5_kt_close
        - Src:             'gic_keytab.c:337,5'
          Dst:             k5_kdclist_free
        - Src:             'gic_keytab.c:338,5'
          Dst:             k5_clear_error
    - functionName:    k5_gic_opt_pac_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_pac_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_shallow_copy
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:468,12'
          Dst:             calloc
    - functionName:    k5_gic_opt_get_responder
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_responder
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_get_expire_cb
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_expire_callback
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_get_fast_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_get_fast_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_fast_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_get_out_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_out_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_get_in_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_in_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_gic_opt_get_fast_ccache_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_fast_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_cc_get_full_name
        - krb5_get_init_creds_opt_set_fast_ccache_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:303,11'
          Dst:             krb5_cc_get_full_name
        - Src:             'gic_opt.c:306,11'
          Dst:             krb5_get_init_creds_opt_set_fast_ccache_name
    - functionName:    krb5_get_init_creds_opt_set_fast_ccache_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:287,5'
          Dst:             __assert_fail
        - Src:             'gic_opt.c:289,30'
          Dst:             strdup
    - functionName:    krb5_get_init_creds_opt_free_pa
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_get_pa
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          186
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - calloc
        - krb5_get_init_creds_opt_free_pa
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:239,9'
          Dst:             calloc
        - Src:             'gic_opt.c:244,21'
          Dst:             strdup
        - Src:             'gic_opt.c:245,22'
          Dst:             strdup
        - Src:             'gic_opt.c:254,5'
          Dst:             krb5_get_init_creds_opt_free_pa
    - functionName:    krb5_get_init_creds_opt_set_pa
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          140
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - krb5_preauth_supply_preauth_data
        - realloc
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:187,5'
          Dst:             __assert_fail
        - Src:             'gic_opt.c:190,9'
          Dst:             realloc
        - Src:             'gic_opt.c:197,16'
          Dst:             strdup
        - Src:             'gic_opt.c:200,17'
          Dst:             strdup
        - Src:             'gic_opt.c:208,12'
          Dst:             krb5_preauth_supply_preauth_data
    - functionName:    krb5_get_init_creds_opt_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:166,5'
          Dst:             __assert_fail
    - functionName:    krb5_get_init_creds_opt_alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_opt.c:148,12'
          Dst:             calloc
    - functionName:    krb5_get_init_creds_opt_set_change_password_prompt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_salt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_preauth_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_address_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_etype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_anonymous
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_canonicalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_proxiable
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_forwardable
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_renew_life
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_set_tkt_life
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_init_creds_opt_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_in_tkt_with_password
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_pwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          188
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - k5_get_init_creds
        - k5_populate_gic_opt
        - krb5_cc_store_cred
        - krb5_free_principal
        - krb5_free_unparsed_name
        - krb5_get_as_key_password
        - krb5_get_init_creds_opt_free
        - krb5_prompter_posix
        - krb5_unparse_name
        - string2data
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_pwd.c:388,14'
          Dst:             string2data
        - Src:             'gic_pwd.c:391,14'
          Dst:             k5_populate_gic_opt
        - Src:             'gic_pwd.c:395,14'
          Dst:             krb5_unparse_name
        - Src:             'gic_pwd.c:397,9'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'gic_pwd.c:402,14'
          Dst:             k5_get_init_creds
        - Src:             'gic_pwd.c:402,14'
          Dst:             krb5_prompter_posix
        - Src:             'gic_pwd.c:402,14'
          Dst:             krb5_get_as_key_password
        - Src:             'gic_pwd.c:405,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'gic_pwd.c:406,5'
          Dst:             krb5_get_init_creds_opt_free
        - Src:             'gic_pwd.c:407,5'
          Dst:             zapfree
        - Src:             'gic_pwd.c:411,5'
          Dst:             krb5_free_principal
        - Src:             'gic_pwd.c:412,5'
          Dst:             krb5_free_principal
        - Src:             'gic_pwd.c:417,23'
          Dst:             krb5_cc_store_cred
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    krb5_get_as_key_password
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_pwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          326
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - alloc_data
        - dgettext
        - explicit_bzero
        - k5_response_items_ask_question
        - k5_response_items_get_answer
        - k5_set_prompt_types
        - krb5_c_string_to_key_with_params
        - krb5_free_keyblock_contents
        - krb5_principal2salt
        - krb5_unparse_name
        - krb5int_copy_data_contents
        - make_data
        - snprintf
        - strlen
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_pwd.c:35,16'
          Dst:             k5_response_items_ask_question
        - Src:             'gic_pwd.c:50,13'
          Dst:             krb5_free_keyblock_contents
        - Src:             'gic_pwd.c:57,17'
          Dst:             k5_response_items_get_answer
        - Src:             'gic_pwd.c:60,44'
          Dst:             strlen
        - Src:             'gic_pwd.c:60,19'
          Dst:             alloc_data
        - Src:             'gic_pwd.c:63,45'
          Dst:             strlen
        - Src:             'gic_pwd.c:72,20'
          Dst:             krb5_unparse_name
        - Src:             'gic_pwd.c:75,48'
          Dst:             dgettext
        - Src:             'gic_pwd.c:75,9'
          Dst:             snprintf
        - Src:             'gic_pwd.c:79,14'
          Dst:             make_data
        - Src:             'gic_pwd.c:86,9'
          Dst:             k5_set_prompt_types
        - Src:             'gic_pwd.c:88,9'
          Dst:             k5_set_prompt_types
        - Src:             'gic_pwd.c:92,15'
          Dst:             krb5int_copy_data_contents
        - Src:             'gic_pwd.c:93,9'
          Dst:             explicit_bzero
        - Src:             'gic_pwd.c:100,20'
          Dst:             krb5_principal2salt
        - Src:             'gic_pwd.c:108,11'
          Dst:             krb5_c_string_to_key_with_params
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_chpw_options
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_pwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_gic_opt_shallow_copy
        - krb5_get_init_creds_opt_set_forwardable
        - krb5_get_init_creds_opt_set_out_ccache
        - krb5_get_init_creds_opt_set_proxiable
        - krb5_get_init_creds_opt_set_renew_life
        - krb5_get_init_creds_opt_set_tkt_life
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_pwd.c:152,11'
          Dst:             k5_gic_opt_shallow_copy
        - Src:             'gic_pwd.c:157,5'
          Dst:             krb5_get_init_creds_opt_set_tkt_life
        - Src:             'gic_pwd.c:158,5'
          Dst:             krb5_get_init_creds_opt_set_renew_life
        - Src:             'gic_pwd.c:159,5'
          Dst:             krb5_get_init_creds_opt_set_forwardable
        - Src:             'gic_pwd.c:160,5'
          Dst:             krb5_get_init_creds_opt_set_proxiable
        - Src:             'gic_pwd.c:167,5'
          Dst:             krb5_get_init_creds_opt_set_out_ccache
    - functionName:    krb5_get_init_creds_password
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_pwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          508
      EdgeCount:       100
      CyclomaticComplexity: 27
      functionsReached:
        - dgettext
        - error_message
        - k5_get_init_creds
        - k5_set_prompt_types
        - krb5_change_password
        - krb5_chpw_message
        - krb5_free_cred_contents
        - krb5_free_kdc_rep
        - krb5_get_as_key_password
        - krb5int_strlcpy
        - krb5int_trace
        - make_chpw_options
        - snprintf
        - strcmp
        - string2data
        - strlen
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_pwd.c:201,15'
          Dst:             string2data
        - Src:             'gic_pwd.c:205,11'
          Dst:             k5_get_init_creds
        - Src:             'gic_pwd.c:205,11'
          Dst:             krb5_get_as_key_password
        - Src:             'gic_pwd.c:223,5'
          Dst:             krb5int_trace
        - Src:             'gic_pwd.c:228,11'
          Dst:             make_chpw_options
        - Src:             'gic_pwd.c:231,11'
          Dst:             k5_get_init_creds
        - Src:             'gic_pwd.c:231,11'
          Dst:             krb5_get_as_key_password
        - Src:             'gic_pwd.c:240,24'
          Dst:             dgettext
        - Src:             'gic_pwd.c:248,24'
          Dst:             dgettext
        - Src:             'gic_pwd.c:253,21'
          Dst:             dgettext
        - Src:             'gic_pwd.c:253,5'
          Dst:             krb5int_strlcpy
        - Src:             'gic_pwd.c:257,9'
          Dst:             krb5int_trace
        - Src:             'gic_pwd.c:262,9'
          Dst:             k5_set_prompt_types
        - Src:             'gic_pwd.c:265,9'
          Dst:             k5_set_prompt_types
        - Src:             'gic_pwd.c:269,13'
          Dst:             strcmp
        - Src:             'gic_pwd.c:272,22'
          Dst:             dgettext
        - Src:             'gic_pwd.c:272,51'
          Dst:             error_message
        - Src:             'gic_pwd.c:271,13'
          Dst:             snprintf
        - Src:             'gic_pwd.c:276,22'
          Dst:             dgettext
        - Src:             'gic_pwd.c:276,51'
          Dst:             error_message
        - Src:             'gic_pwd.c:275,13'
          Dst:             snprintf
        - Src:             'gic_pwd.c:282,24'
          Dst:             krb5_change_password
        - Src:             'gic_pwd.c:307,17'
          Dst:             krb5_chpw_message
        - Src:             'gic_pwd.c:313,36'
          Dst:             strlen
        - Src:             'gic_pwd.c:317,22'
          Dst:             dgettext
        - Src:             'gic_pwd.c:316,13'
          Dst:             snprintf
        - Src:             'gic_pwd.c:332,5'
          Dst:             krb5int_trace
        - Src:             'gic_pwd.c:334,11'
          Dst:             k5_get_init_creds
        - Src:             'gic_pwd.c:334,11'
          Dst:             krb5_get_as_key_password
        - Src:             'gic_pwd.c:342,5'
          Dst:             zapfree
        - Src:             'gic_pwd.c:345,5'
          Dst:             krb5_free_cred_contents
        - Src:             'gic_pwd.c:347,9'
          Dst:             krb5_free_kdc_rep
    - functionName:    krb5_init_creds_set_password
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gic_pwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
        - string2data
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gic_pwd.c:124,9'
          Dst:             strdup
        - Src:             'gic_pwd.c:128,5'
          Dst:             zapfree
        - Src:             'gic_pwd.c:129,26'
          Dst:             string2data
    - functionName:    krb5_is_permitted_enctype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_etypes_contains
        - krb5_free_enctypes
        - krb5_get_permitted_enctypes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:603,9'
          Dst:             krb5_get_permitted_enctypes
        - Src:             'init_ctx.c:605,11'
          Dst:             k5_etypes_contains
        - Src:             'init_ctx.c:606,5'
          Dst:             krb5_free_enctypes
    - functionName:    krb5_get_permitted_enctypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_copy_etypes
        - krb5int_parse_enctype_list
        - profile_get_string
        - profile_release_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:583,16'
          Dst:             k5_copy_etypes
        - Src:             'init_ctx.c:586,11'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:591,11'
          Dst:             krb5int_parse_enctype_list
        - Src:             'init_ctx.c:593,5'
          Dst:             profile_release_string
    - functionName:    krb5_free_enctypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_parse_enctype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          271
      EdgeCount:       62
      CyclomaticComplexity: 16
      functionsReached:
        - krb5_string_to_enctype
        - krb5int_trace
        - mod_list
        - strcasecmp
        - strtok_r
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:464,18'
          Dst:             strtok_r
        - Src:             'init_ctx.c:471,13'
          Dst:             strcasecmp
        - Src:             'init_ctx.c:474,17'
          Dst:             mod_list
        - Src:             'init_ctx.c:475,20'
          Dst:             strcasecmp
        - Src:             'init_ctx.c:476,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:477,20'
          Dst:             strcasecmp
        - Src:             'init_ctx.c:478,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:479,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:480,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:481,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:482,20'
          Dst:             strcasecmp
        - Src:             'init_ctx.c:483,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:484,20'
          Dst:             strcasecmp
        - Src:             'init_ctx.c:485,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:486,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:487,20'
          Dst:             krb5_string_to_enctype
        - Src:             'init_ctx.c:489,13'
          Dst:             mod_list
        - Src:             'init_ctx.c:491,13'
          Dst:             krb5int_trace
        - Src:             'init_ctx.c:465,18'
          Dst:             strtok_r
    - functionName:    strtok_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mod_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          202
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - krb5int_c_weak_enctype
        - realloc
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:409,41'
          Dst:             krb5int_c_weak_enctype
        - Src:             'init_ctx.c:418,16'
          Dst:             realloc
        - Src:             'init_ctx.c:432,20'
          Dst:             realloc
    - functionName:    krb5_get_tgs_ktypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          112
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5_copy_etypes
        - krb5int_parse_enctype_list
        - profile_get_string
        - profile_release_string
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:552,16'
          Dst:             k5_copy_etypes
        - Src:             'init_ctx.c:555,11'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:561,15'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:567,11'
          Dst:             krb5int_parse_enctype_list
        - Src:             'init_ctx.c:569,5'
          Dst:             profile_release_string
    - functionName:    krb5_get_default_in_tkt_ktypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_parse_enctype_list
        - profile_get_string
        - profile_release_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:515,11'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:521,15'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:527,11'
          Dst:             krb5int_parse_enctype_list
        - Src:             'init_ctx.c:529,5'
          Dst:             profile_release_string
    - functionName:    krb5_set_default_tgs_ktypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_set_default_tgs_enctypes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:392,12'
          Dst:             krb5_set_default_tgs_enctypes
    - functionName:    krb5_set_default_tgs_enctypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          145
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - k5_copy_etypes
        - krb5_c_valid_enctype
        - krb5int_c_weak_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:356,16'
          Dst:             k5_copy_etypes
        - Src:             'init_ctx.c:363,18'
          Dst:             krb5_c_valid_enctype
        - Src:             'init_ctx.c:366,20'
          Dst:             krb5int_c_weak_enctype
    - functionName:    krb5_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_ccselect_free_context
        - k5_hostrealm_free_context
        - k5_localauth_free_context
        - k5_os_free_context
        - k5_plugin_free_context
        - krb5_clear_error_message
      functionUses:    59
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:316,5'
          Dst:             k5_os_free_context
        - Src:             'init_ctx.c:323,5'
          Dst:             krb5_clear_error_message
        - Src:             'init_ctx.c:331,5'
          Dst:             k5_ccselect_free_context
        - Src:             'init_ctx.c:332,5'
          Dst:             k5_hostrealm_free_context
        - Src:             'init_ctx.c:333,5'
          Dst:             k5_localauth_free_context
        - Src:             'init_ctx.c:334,5'
          Dst:             k5_plugin_free_context
    - functionName:    get_integer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_trace
        - profile_get_integer
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:80,14'
          Dst:             profile_get_integer
        - Src:             'init_ctx.c:83,9'
          Dst:             krb5int_trace
    - functionName:    get_tristate
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - profile_get_boolean
        - profile_get_string
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:107,14'
          Dst:             profile_get_boolean
        - Src:             'init_ctx.c:111,14'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:115,14'
          Dst:             strcasecmp
    - functionName:    get_boolean
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_trace
        - profile_get_boolean
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:92,14'
          Dst:             profile_get_boolean
        - Src:             'init_ctx.c:95,9'
          Dst:             krb5int_trace
    - functionName:    krb5int_init_context_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_init_context_profile
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:151,12'
          Dst:             krb5_init_context_profile
    - functionName:    krb5_init_context_profile
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          387
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - calloc
        - get_boolean
        - get_integer
        - get_tristate
        - k5_expand_path_tokens
        - k5_init_trace
        - k5_os_init_context
        - krb5_free_context
        - krb5_string_to_deltat
        - krb5int_initialize_library
        - krb5int_trace
        - profile_get_string
        - profile_release_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:172,9'
          Dst:             __assert_fail
        - Src:             'init_ctx.c:174,9'
          Dst:             __assert_fail
        - Src:             'init_ctx.c:176,9'
          Dst:             __assert_fail
        - Src:             'init_ctx.c:179,14'
          Dst:             krb5int_initialize_library
        - Src:             'init_ctx.c:202,11'
          Dst:             calloc
        - Src:             'init_ctx.c:209,14'
          Dst:             k5_os_init_context
        - Src:             'init_ctx.c:216,9'
          Dst:             k5_init_trace
        - Src:             'init_ctx.c:219,14'
          Dst:             get_boolean
        - Src:             'init_ctx.c:224,14'
          Dst:             get_boolean
        - Src:             'init_ctx.c:229,14'
          Dst:             get_boolean
        - Src:             'init_ctx.c:234,14'
          Dst:             get_boolean
        - Src:             'init_ctx.c:239,14'
          Dst:             get_boolean
        - Src:             'init_ctx.c:244,14'
          Dst:             get_tristate
        - Src:             'init_ctx.c:251,5'
          Dst:             get_integer
        - Src:             'init_ctx.c:254,14'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:260,18'
          Dst:             krb5_string_to_deltat
        - Src:             'init_ctx.c:265,5'
          Dst:             get_integer
        - Src:             'init_ctx.c:269,5'
          Dst:             get_integer
        - Src:             'init_ctx.c:272,14'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:276,18'
          Dst:             k5_expand_path_tokens
        - Src:             'init_ctx.c:278,9'
          Dst:             krb5int_trace
        - Src:             'init_ctx.c:292,5'
          Dst:             get_integer
        - Src:             'init_ctx.c:299,11'
          Dst:             profile_get_string
        - Src:             'init_ctx.c:305,5'
          Dst:             profile_release_string
        - Src:             'init_ctx.c:306,5'
          Dst:             profile_release_string
        - Src:             'init_ctx.c:307,5'
          Dst:             krb5_free_context
    - functionName:    krb5_init_secure_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_init_context_profile
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:145,12'
          Dst:             krb5_init_context_profile
    - functionName:    krb5_init_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/init_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_init_context_profile
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'init_ctx.c:139,12'
          Dst:             krb5_init_context_profile
    - functionName:    krb5_kdc_rep_decrypt_proc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kdc_rep_dc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          112
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - decode_krb5_enc_kdc_rep_part
        - krb5_c_decrypt
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kdc_rep_dc.c:59,19'
          Dst:             krb5_c_decrypt
        - Src:             'kdc_rep_dc.c:69,14'
          Dst:             decode_krb5_enc_kdc_rep_part
    - functionName:    k5_change_error_message_code
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_restore_ctx_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_clear_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:234,9'
          Dst:             k5_clear_error
        - Src:             'kerrs.c:239,9'
          Dst:             k5_clear_error
    - functionName:    k5_save_ctx_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_clear_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_clear_error
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:213,5'
          Dst:             k5_clear_error
    - functionName:    krb5_free_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_free_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:201,5'
          Dst:             k5_free_error
    - functionName:    err_fmt_fmt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          125
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:149,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'kerrs.c:152,17'
          Dst:             strchr
        - Src:             'kerrs.c:153,9'
          Dst:             k5_buf_add_len
        - Src:             'kerrs.c:158,13'
          Dst:             k5_buf_add
        - Src:             'kerrs.c:160,13'
          Dst:             k5_buf_add_fmt
        - Src:             'kerrs.c:162,13'
          Dst:             k5_buf_add
        - Src:             'kerrs.c:164,13'
          Dst:             k5_buf_add_fmt
        - Src:             'kerrs.c:167,5'
          Dst:             k5_buf_add
        - Src:             'kerrs.c:168,12'
          Dst:             k5_buf_cstring
    - functionName:    krb5_get_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - err_fmt_fmt
        - error_message
        - k5_get_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:181,16'
          Dst:             error_message
        - Src:             'kerrs.c:183,11'
          Dst:             k5_get_error
        - Src:             'kerrs.c:184,14'
          Dst:             err_fmt_fmt
    - functionName:    krb5_copy_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_clear_error
        - k5_set_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:131,9'
          Dst:             k5_set_error
        - Src:             'kerrs.c:134,9'
          Dst:             k5_clear_error
    - functionName:    krb5_wrap_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_vwrap_error_message
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:105,5'
          Dst:             krb5_vwrap_error_message
    - functionName:    krb5_vwrap_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_free_error
        - k5_get_error
        - k5_set_error
        - vasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:116,24'
          Dst:             vasprintf
        - Src:             'kerrs.c:118,16'
          Dst:             k5_get_error
        - Src:             'kerrs.c:119,5'
          Dst:             k5_set_error
        - Src:             'kerrs.c:120,5'
          Dst:             k5_free_error
    - functionName:    krb5_vprepend_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_wrap_error_message
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:95,5'
          Dst:             krb5_wrap_error_message
    - functionName:    krb5_prepend_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_vwrap_error_message
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:87,5'
          Dst:             krb5_vwrap_error_message
    - functionName:    krb5_vset_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_vset_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:73,5'
          Dst:             k5_vset_error
    - functionName:    krb5_set_error_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kerrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_vset_error
      functionUses:    61
      BranchProfiles:  []
      Callsites:
        - Src:             'kerrs.c:53,5'
          Dst:             k5_vset_error
    - functionName:    k5_free_pa_spake
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          117
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - k5_free_spake_factor
        - krb5_free_data_contents
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kfree.c:895,5'
          Branch Sides:    []
      Callsites:
        - Src:             'kfree.c:900,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:902,13'
          Dst:             k5_free_spake_factor
        - Src:             'kfree.c:906,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:907,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:910,9'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_data_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    108
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_free_spake_factor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:883,9'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5_free_secure_cookie
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 870
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_zapfree_pa_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:873,5'
          Dst:             k5_zapfree_pa_data
    - functionName:    k5_zapfree_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:378,9'
          Dst:             zapfree
        - Src:             'kfree.c:379,9'
          Dst:             zapfree
    - functionName:    free_vmac
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
        - krb5_free_principal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:847,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:848,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    108
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_checksum_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_free_cammac
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - free_vmac
        - krb5_free_authdata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:859,5'
          Dst:             krb5_free_authdata
        - Src:             'kfree.c:860,5'
          Dst:             free_vmac
        - Src:             'kfree.c:861,5'
          Dst:             free_vmac
        - Src:             'kfree.c:863,9'
          Dst:             free_vmac
    - functionName:    k5_free_kkdcp_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_free_pa_otp_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_free_algorithm_identifier
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:821,9'
          Dst:             k5_free_algorithm_identifier
    - functionName:    k5_free_algorithm_identifier
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_free_pa_otp_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - k5_free_otp_tokeninfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:805,9'
          Dst:             k5_free_otp_tokeninfo
    - functionName:    k5_free_otp_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - k5_free_algorithm_identifier
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:790,9'
          Dst:             k5_free_algorithm_identifier
    - functionName:    krb5_free_iakerb_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:763,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_iakerb_header
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 755
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_data
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:752,5'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:753,5'
          Dst:             krb5_free_data
    - functionName:    krb5_free_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    63
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_ad_kdcissued
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_authdata
        - krb5_free_checksum_contents
        - krb5_free_principal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:740,5'
          Dst:             krb5_free_checksum_contents
        - Src:             'kfree.c:741,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:742,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5int_free_data_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_free_data_ptr_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:716,9'
          Dst:             krb5_free_data
    - functionName:    krb5_free_fast_armored_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_checksum_contents
        - krb5_free_data_contents
        - krb5_free_fast_armor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:703,9'
          Dst:             krb5_free_fast_armor
        - Src:             'kfree.c:704,5'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:706,9'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_fast_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_data_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:672,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_fast_finished
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:692,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:693,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_fast_response
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_fast_finished
        - krb5_free_keyblock
        - krb5_free_pa_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:681,5'
          Dst:             krb5_free_pa_data
        - Src:             'kfree.c:682,5'
          Dst:             krb5_free_fast_finished
        - Src:             'kfree.c:683,5'
          Dst:             krb5_free_keyblock
    - functionName:    krb5_free_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    34
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_free_keyblock
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:353,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    krb5_free_fast_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_kdc_req
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:663,5'
          Dst:             krb5_free_kdc_req
    - functionName:    krb5_free_kdc_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_addresses
        - krb5_free_authdata
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5_free_tickets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:333,5'
          Dst:             krb5_free_pa_data
        - Src:             'kfree.c:334,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:335,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:337,5'
          Dst:             krb5_free_addresses
        - Src:             'kfree.c:339,5'
          Dst:             krb5_free_authdata
        - Src:             'kfree.c:340,5'
          Dst:             krb5_free_tickets
    - functionName:    krb5_free_addresses
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_tickets
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_ticket
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:468,9'
          Dst:             krb5_free_ticket
    - functionName:    krb5_free_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_enc_tkt_part
        - krb5_free_principal
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:454,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:456,5'
          Dst:             krb5_free_enc_tkt_part
    - functionName:    krb5_free_enc_tkt_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_addresses
        - krb5_free_authdata
        - krb5_free_keyblock
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:293,5'
          Dst:             krb5_free_keyblock
        - Src:             'kfree.c:294,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:296,5'
          Dst:             krb5_free_addresses
        - Src:             'kfree.c:297,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5_free_pa_pac_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_pa_s4u_x509_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
        - krb5_free_s4u_userid_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:646,5'
          Dst:             krb5_free_s4u_userid_contents
        - Src:             'kfree.c:647,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_s4u_userid_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_data_contents
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:633,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:635,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_pa_for_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
        - krb5_free_data_contents
        - krb5_free_principal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:620,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:622,5'
          Dst:             krb5_free_checksum_contents
        - Src:             'kfree.c:623,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_pa_enc_ts
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_enc_sam_response_enc_2_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:604,9'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_enc_sam_response_enc_2
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_enc_sam_response_enc_2_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:593,5'
          Dst:             krb5_free_enc_sam_response_enc_2_contents
    - functionName:    krb5_free_sam_response_2_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:582,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:584,9'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_sam_response_2
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_sam_response_2_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:572,5'
          Dst:             krb5_free_sam_response_2_contents
    - functionName:    krb5_free_sam_challenge_2_body_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          130
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:554,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:556,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:558,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:560,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:562,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:564,9'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_sam_challenge_2_body
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_sam_challenge_2_body_contents
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:543,5'
          Dst:             krb5_free_sam_challenge_2_body_contents
    - functionName:    krb5_free_sam_challenge_2_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_free_checksum
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:525,9'
          Dst:             krb5_free_data_contents
        - Src:             'kfree.c:529,13'
          Dst:             krb5_free_checksum
    - functionName:    krb5_free_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_checksum_contents
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:137,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_free_sam_challenge_2
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_sam_challenge_2_contents
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:512,5'
          Dst:             krb5_free_sam_challenge_2_contents
    - functionName:    krb5_free_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_unparsed_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_tkt_authent
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_authenticator
        - krb5_free_ticket
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:489,5'
          Dst:             krb5_free_ticket
        - Src:             'kfree.c:490,5'
          Dst:             krb5_free_authenticator
    - functionName:    krb5_free_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_authenticator_contents
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:128,5'
          Dst:             krb5_free_authenticator_contents
    - functionName:    krb5_free_authenticator_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_authdata
        - krb5_free_checksum
        - krb5_free_keyblock
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:113,5'
          Dst:             krb5_free_checksum
        - Src:             'kfree.c:115,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:117,5'
          Dst:             krb5_free_keyblock
        - Src:             'kfree.c:119,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5_free_tgt_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_creds
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:480,9'
          Dst:             krb5_free_creds
    - functionName:    krb5_free_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_cred_contents
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:217,5'
          Dst:             krb5_free_cred_contents
    - functionName:    krb5_free_cred_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_addresses
        - krb5_free_authdata
        - krb5_free_keyblock_contents
        - krb5_free_principal
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:171,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:173,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:175,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'kfree.c:180,5'
          Dst:             krb5_free_addresses
        - Src:             'kfree.c:182,5'
          Dst:             krb5_free_authdata
    - functionName:    krb5_free_keyblock_contents
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_free_keyblock_contents
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:347,5'
          Dst:             krb5int_c_free_keyblock_contents
    - functionName:    krb5_free_safe
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_address
        - krb5_free_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:442,5'
          Dst:             krb5_free_address
        - Src:             'kfree.c:443,5'
          Dst:             krb5_free_address
        - Src:             'kfree.c:444,5'
          Dst:             krb5_free_checksum
    - functionName:    krb5_free_address
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_priv_enc_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_address
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:431,5'
          Dst:             krb5_free_address
        - Src:             'kfree.c:432,5'
          Dst:             krb5_free_address
    - functionName:    krb5_free_priv
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_kdc_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_enc_kdc_rep_part
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5_free_ticket
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:319,5'
          Dst:             krb5_free_pa_data
        - Src:             'kfree.c:320,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:321,5'
          Dst:             krb5_free_ticket
        - Src:             'kfree.c:323,5'
          Dst:             krb5_free_enc_kdc_rep_part
    - functionName:    krb5_free_enc_kdc_rep_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_addresses
        - krb5_free_keyblock
        - krb5_free_last_req
        - krb5_free_pa_data
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:280,5'
          Dst:             krb5_free_keyblock
        - Src:             'kfree.c:281,5'
          Dst:             krb5_free_last_req
        - Src:             'kfree.c:282,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:283,5'
          Dst:             krb5_free_addresses
        - Src:             'kfree.c:284,5'
          Dst:             krb5_free_pa_data
    - functionName:    krb5_free_last_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_principal
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:307,5'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:308,5'
          Dst:             krb5_free_principal
    - functionName:    krb5_free_etype_info
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:268,9'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_enc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_data_contents
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:256,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_free_octet_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_cred_enc_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_address
        - krb5_free_addresses
        - krb5_free_keyblock
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:193,5'
          Dst:             krb5_free_address
        - Src:             'kfree.c:195,5'
          Dst:             krb5_free_address
        - Src:             'kfree.c:200,13'
          Dst:             krb5_free_keyblock
        - Src:             'kfree.c:201,13'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:202,13'
          Dst:             krb5_free_principal
        - Src:             'kfree.c:203,13'
          Dst:             krb5_free_addresses
    - functionName:    krb5_free_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_tickets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:156,5'
          Dst:             krb5_free_tickets
    - functionName:    krb5_free_ap_rep_enc_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_keyblock
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:104,5'
          Dst:             krb5_free_keyblock
    - functionName:    krb5_free_ap_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_ticket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kfree.c:94,5'
          Dst:             krb5_free_ticket
    - functionName:    krb5_free_ap_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/kfree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_libdefault_boolean
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/libdef_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _krb5_conf_boolean
        - krb5int_libdefault_string
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'libdef_parse.c:143,14'
          Dst:             krb5int_libdefault_string
        - Src:             'libdef_parse.c:148,18'
          Dst:             _krb5_conf_boolean
    - functionName:    krb5int_libdefault_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/libdef_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          203
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - profile_free_list
        - profile_get_values
        - strdup
        - strncpy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libdef_parse.c:79,5'
          Dst:             strncpy
        - Src:             'libdef_parse.c:101,14'
          Dst:             profile_get_values
        - Src:             'libdef_parse.c:115,14'
          Dst:             profile_get_values
        - Src:             'libdef_parse.c:126,22'
          Dst:             strdup
        - Src:             'libdef_parse.c:131,5'
          Dst:             profile_free_list
    - functionName:    _krb5_conf_boolean
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/libdef_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          73
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - strcasecmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libdef_parse.c:53,14'
          Dst:             strcasecmp
        - Src:             'libdef_parse.c:58,14'
          Dst:             strcasecmp
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    encrypt_credencpart
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - encode_krb5_enc_cred_part
        - k5_encrypt_keyhelper
        - zapfreedata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_cred.c:47,11'
          Dst:             encode_krb5_enc_cred_part
        - Src:             'mk_cred.c:59,11'
          Dst:             k5_encrypt_keyhelper
        - Src:             'mk_cred.c:62,5'
          Dst:             zapfreedata
    - functionName:    zapfreedata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:687,9'
          Dst:             zapfree
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5_mk_1cred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
        - krb5_mk_ncred
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_cred.c:222,12'
          Dst:             calloc
        - Src:             'mk_cred.c:228,14'
          Dst:             krb5_mk_ncred
    - functionName:    krb5_mk_ncred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          207
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - create_krbcred
        - k5_privsafe_check_replay
        - k5_privsafe_gen_addrs
        - k5_privsafe_gen_rdata
        - krb5_free_data_contents
        - krb5_us_timeofday
        - zapfreedata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_cred.c:173,11'
          Dst:             k5_privsafe_gen_rdata
        - Src:             'mk_cred.c:178,15'
          Dst:             krb5_us_timeofday
        - Src:             'mk_cred.c:183,11'
          Dst:             k5_privsafe_gen_addrs
        - Src:             'mk_cred.c:189,11'
          Dst:             create_krbcred
        - Src:             'mk_cred.c:195,15'
          Dst:             k5_privsafe_check_replay
        - Src:             'mk_cred.c:207,5'
          Dst:             krb5_free_data_contents
        - Src:             'mk_cred.c:210,5'
          Dst:             zapfreedata
    - functionName:    create_krbcred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          275
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - decode_krb5_ticket
        - encode_krb5_cred
        - encrypt_credencpart
        - k5calloc
        - krb5_free_data_contents
        - krb5_free_tickets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_cred.c:93,15'
          Dst:             k5calloc
        - Src:             'mk_cred.c:97,19'
          Dst:             k5calloc
        - Src:             'mk_cred.c:101,14'
          Dst:             k5calloc
        - Src:             'mk_cred.c:108,15'
          Dst:             decode_krb5_ticket
        - Src:             'mk_cred.c:130,11'
          Dst:             encrypt_credencpart
        - Src:             'mk_cred.c:138,11'
          Dst:             encode_krb5_cred
        - Src:             'mk_cred.c:146,5'
          Dst:             krb5_free_tickets
        - Src:             'mk_cred.c:147,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_mk_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_krb5_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_error.c:44,19'
          Dst:             encode_krb5_error
    - functionName:    krb5_mk_rep_dce
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_rep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mk_rep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_rep.c:151,12'
          Dst:             k5_mk_rep
    - functionName:    k5_mk_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_rep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          316
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - __assert_fail
        - encode_krb5_ap_rep
        - encode_krb5_ap_rep_enc_part
        - k5_encrypt_keyhelper
        - k5_generate_and_save_subkey
        - krb5_free_data
        - krb5_generate_seq_number
        - krb5_us_timeofday
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_rep.c:81,23'
          Dst:             krb5_generate_seq_number
        - Src:             'mk_rep.c:88,9'
          Dst:             krb5_us_timeofday
        - Src:             'mk_rep.c:97,9'
          Dst:             __assert_fail
        - Src:             'mk_rep.c:99,18'
          Dst:             k5_generate_and_save_subkey
        - Src:             'mk_rep.c:113,5'
          Dst:             krb5int_trace
        - Src:             'mk_rep.c:117,19'
          Dst:             encode_krb5_ap_rep_enc_part
        - Src:             'mk_rep.c:120,19'
          Dst:             k5_encrypt_keyhelper
        - Src:             'mk_rep.c:125,20'
          Dst:             encode_krb5_ap_rep
        - Src:             'mk_rep.c:137,5'
          Dst:             krb5_free_data
    - functionName:    krb5_mk_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_rep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mk_rep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_rep.c:145,12'
          Dst:             k5_mk_rep
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_etype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_req_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          103
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - encode_krb5_etype_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_req_ext.c:354,12'
          Dst:             encode_krb5_etype_list
    - functionName:    make_ap_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_req_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          130
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_encode_authdata_container
        - krb5_free_data
        - make_etype_list
        - store_32_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_req_ext.c:374,11'
          Dst:             make_etype_list
        - Src:             'mk_req_ext.c:387,9'
          Dst:             store_32_le
        - Src:             'mk_req_ext.c:397,15'
          Dst:             krb5_encode_authdata_container
        - Src:             'mk_req_ext.c:403,5'
          Dst:             krb5_free_data
    - functionName:    generate_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_req_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          249
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - krb5_authdata_export_authdata
        - krb5_free_authdata
        - krb5_k_key_keyblock
        - krb5_merge_authdata
        - krb5_us_timeofday
        - make_ap_authdata
        - profile_get_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_req_ext.c:272,18'
          Dst:             krb5_k_key_keyblock
        - Src:             'mk_req_ext.c:281,18'
          Dst:             krb5_authdata_export_authdata
        - Src:             'mk_req_ext.c:290,18'
          Dst:             krb5_merge_authdata
        - Src:             'mk_req_ext.c:295,13'
          Dst:             krb5_free_authdata
        - Src:             'mk_req_ext.c:298,9'
          Dst:             krb5_free_authdata
        - Src:             'mk_req_ext.c:304,18'
          Dst:             profile_get_boolean
        - Src:             'mk_req_ext.c:313,14'
          Dst:             make_ap_authdata
        - Src:             'mk_req_ext.c:318,18'
          Dst:             krb5_merge_authdata
        - Src:             'mk_req_ext.c:320,9'
          Dst:             krb5_free_authdata
        - Src:             'mk_req_ext.c:323,9'
          Dst:             krb5_free_authdata
        - Src:             'mk_req_ext.c:327,12'
          Dst:             krb5_us_timeofday
    - functionName:    krb5_mk_req_extended
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_req_ext.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         104
      ICount:          690
      EdgeCount:       143
      CyclomaticComplexity: 41
      functionsReached:
        - decode_krb5_ticket
        - encode_krb5_ap_req
        - encode_krb5_authenticator
        - generate_authenticator
        - k5_generate_and_save_subkey
        - krb5_auth_con_init
        - krb5_encrypt_helper
        - krb5_free_ticket
        - krb5_generate_seq_number
        - krb5_get_tgs_ktypes
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_make_checksum
        - krb5int_trace
        - krb5int_validate_times
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_req_ext.c:112,19'
          Dst:             decode_krb5_ticket
        - Src:             'mk_req_ext.c:116,19'
          Dst:             krb5int_validate_times
        - Src:             'mk_req_ext.c:121,23'
          Dst:             krb5_auth_con_init
        - Src:             'mk_req_ext.c:127,9'
          Dst:             krb5_k_free_key
        - Src:             'mk_req_ext.c:132,19'
          Dst:             krb5_k_create_key
        - Src:             'mk_req_ext.c:140,23'
          Dst:             krb5_generate_seq_number
        - Src:             'mk_req_ext.c:147,18'
          Dst:             k5_generate_and_save_subkey
        - Src:             'mk_req_ext.c:171,22'
          Dst:             krb5_k_make_checksum
        - Src:             'mk_req_ext.c:189,22'
          Dst:             krb5_get_tgs_ktypes
        - Src:             'mk_req_ext.c:196,5'
          Dst:             krb5int_trace
        - Src:             'mk_req_ext.c:198,19'
          Dst:             generate_authenticator
        - Src:             'mk_req_ext.c:210,19'
          Dst:             encode_krb5_authenticator
        - Src:             'mk_req_ext.c:215,19'
          Dst:             krb5_encrypt_helper
        - Src:             'mk_req_ext.c:220,19'
          Dst:             encode_krb5_ap_req
        - Src:             'mk_req_ext.c:242,9'
          Dst:             krb5_free_ticket
    - functionName:    copy_pac
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          100
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5alloc
        - k5memdup
        - krb5_pac_free
        - krb5int_copy_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:237,11'
          Dst:             k5alloc
        - Src:             'pac.c:241,20'
          Dst:             k5memdup
        - Src:             'pac.c:246,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:258,5'
          Dst:             krb5_pac_free
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    krb5_pac_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zapfree
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:121,9'
          Dst:             zapfree
        - Src:             'pac.c:123,9'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    mspac_attr2type
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          143
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - strncasecmp
        - strtoul
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:935,13'
          Dst:             strncasecmp
        - Src:             'pac.c:942,9'
          Dst:             strncasecmp
        - Src:             'pac.c:947,17'
          Dst:             strtoul
    - functionName:    strncasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strtoul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_type2attr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_signature
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          186
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:450,5'
          Dst:             __assert_fail
        - Src:             'pac.c:453,5'
          Dst:             __assert_fail
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    mspac_copy
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1254
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - copy_pac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1248,5'
          Dst:             __assert_fail
        - Src:             'pac.c:1249,5'
          Dst:             __assert_fail
        - Src:             'pac.c:1252,15'
          Dst:             copy_pac
    - functionName:    mspac_internalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          151
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - k5_ser_unpack_len
        - krb5_pac_free
        - krb5_pac_parse
        - krb5_ser_unpack_int32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1205,11'
          Dst:             k5_ser_unpack_len
        - Src:             'pac.c:1210,15'
          Dst:             krb5_pac_parse
        - Src:             'pac.c:1219,11'
          Dst:             krb5_ser_unpack_int32
        - Src:             'pac.c:1221,9'
          Dst:             krb5_pac_free
        - Src:             'pac.c:1229,9'
          Dst:             krb5_pac_free
    - functionName:    krb5_pac_parse
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          269
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - k5_input_get_uint32_le
        - k5_input_get_uint64_le
        - k5_input_init
        - k5calloc
        - krb5_pac_free
        - krb5_pac_init
        - realloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:277,5'
          Dst:             k5_input_init
        - Src:             'pac.c:279,16'
          Dst:             k5_input_get_uint32_le
        - Src:             'pac.c:280,15'
          Dst:             k5_input_get_uint32_le
        - Src:             'pac.c:291,11'
          Dst:             krb5_pac_init
        - Src:             'pac.c:295,20'
          Dst:             k5calloc
        - Src:             'pac.c:305,24'
          Dst:             k5_input_get_uint32_le
        - Src:             'pac.c:306,24'
          Dst:             k5_input_get_uint32_le
        - Src:             'pac.c:307,26'
          Dst:             k5_input_get_uint64_le
        - Src:             'pac.c:320,13'
          Dst:             realloc
        - Src:             'pac.c:322,9'
          Dst:             krb5_pac_free
        - Src:             'pac.c:335,5'
          Dst:             krb5_pac_free
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint32_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_le
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:118,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:119,32'
          Dst:             load_32_le
    - functionName:    krb5_pac_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:217,22'
          Dst:             k5alloc
    - functionName:    k5_input_get_uint64_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_64_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:139,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:140,32'
          Dst:             load_64_le
    - functionName:    load_64_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_externalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
        - mspac_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1168,9'
          Dst:             mspac_size
        - Src:             'pac.c:1171,13'
          Dst:             krb5_ser_pack_int32
        - Src:             'pac.c:1172,13'
          Dst:             krb5_ser_pack_bytes
        - Src:             'pac.c:1175,13'
          Dst:             krb5_ser_pack_int32
        - Src:             'pac.c:1180,9'
          Dst:             krb5_ser_pack_int32
        - Src:             'pac.c:1181,9'
          Dst:             krb5_ser_pack_int32
    - functionName:    mspac_size
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          49
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_verify
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_pac_verify
        - krb5int_trace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:852,11'
          Dst:             krb5_pac_verify
        - Src:             'pac.c:856,9'
          Dst:             krb5int_trace
    - functionName:    krb5_pac_verify
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_pac_verify_ext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:699,12'
          Dst:             krb5_pac_verify_ext
    - functionName:    krb5_pac_verify_ext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_pac_validate_client
        - verify_pac_checksums
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:715,15'
          Dst:             verify_pac_checksums
        - Src:             'pac.c:721,15'
          Dst:             k5_pac_validate_client
    - functionName:    verify_pac_checksums
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          189
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - k5_pac_locate_buffer
        - krb5int_copy_data_contents
        - verify_checksum
        - zero_signature
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:526,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:530,11'
          Dst:             zero_signature
        - Src:             'pac.c:533,11'
          Dst:             zero_signature
        - Src:             'pac.c:539,15'
          Dst:             verify_checksum
        - Src:             'pac.c:546,15'
          Dst:             zero_signature
        - Src:             'pac.c:549,15'
          Dst:             verify_checksum
        - Src:             'pac.c:557,15'
          Dst:             k5_pac_locate_buffer
        - Src:             'pac.c:568,15'
          Dst:             verify_checksum
    - functionName:    k5_pac_validate_client
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          109
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_free_unparsed_name
        - krb5_pac_get_client_info
        - krb5_unparse_name_flags
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:418,11'
          Dst:             krb5_pac_get_client_info
        - Src:             'pac.c:427,11'
          Dst:             krb5_unparse_name_flags
        - Src:             'pac.c:433,37'
          Dst:             strcmp
        - Src:             'pac.c:437,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    krb5_pac_get_client_info
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          153
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - k5_pac_locate_buffer
        - k5_time_to_seconds_since_1970
        - k5_utf16le_to_utf8
        - load_16_le
        - load_64_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:375,11'
          Dst:             k5_pac_locate_buffer
        - Src:             'pac.c:384,23'
          Dst:             load_64_le
        - Src:             'pac.c:386,28'
          Dst:             load_16_le
        - Src:             'pac.c:389,11'
          Dst:             k5_time_to_seconds_since_1970
        - Src:             'pac.c:397,11'
          Dst:             k5_utf16le_to_utf8
    - functionName:    k5_pac_locate_buffer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          165
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - make_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:149,5'
          Dst:             __assert_fail
        - Src:             'pac.c:150,5'
          Dst:             __assert_fail
        - Src:             'pac.c:153,21'
          Dst:             make_data
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_time_to_seconds_since_1970
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          159
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - k5_pac_locate_buffer
        - krb5_c_checksum_length
        - krb5_c_is_keyed_cksum
        - krb5_c_verify_checksum
        - load_32_le
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:490,11'
          Dst:             k5_pac_locate_buffer
        - Src:             'pac.c:496,17'
          Dst:             load_32_le
        - Src:             'pac.c:499,10'
          Dst:             krb5_c_is_keyed_cksum
        - Src:             'pac.c:504,11'
          Dst:             krb5_c_checksum_length
        - Src:             'pac.c:513,11'
          Dst:             krb5_c_verify_checksum
    - functionName:    mspac_free_internal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1134
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_pac_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1132,9'
          Dst:             krb5_pac_free
    - functionName:    mspac_export_internal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1104
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_pac_parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1117,11'
          Dst:             krb5_pac_parse
    - functionName:    mspac_import_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - krb5_pac_free
        - krb5_pac_parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:786,9'
          Dst:             krb5_pac_free
        - Src:             'pac.c:790,5'
          Dst:             __assert_fail
        - Src:             'pac.c:791,5'
          Dst:             __assert_fail
        - Src:             'pac.c:794,12'
          Dst:             krb5_pac_parse
    - functionName:    mspac_export_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - krb5_free_authdata
        - krb5int_copy_data_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:811,16'
          Dst:             calloc
        - Src:             'pac.c:815,19'
          Dst:             calloc
        - Src:             'pac.c:822,12'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:824,9'
          Dst:             krb5_free_authdata
    - functionName:    mspac_set_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1098
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          108
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_pac_add_buffer
        - krb5_pac_free
        - krb5_pac_parse
        - mspac_attr2type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1079,11'
          Dst:             mspac_attr2type
        - Src:             'pac.c:1087,15'
          Dst:             krb5_pac_parse
        - Src:             'pac.c:1091,9'
          Dst:             krb5_pac_free
        - Src:             'pac.c:1094,15'
          Dst:             krb5_pac_add_buffer
    - functionName:    krb5_pac_add_buffer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_pac_add_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:111,12'
          Dst:             k5_pac_add_buffer
    - functionName:    k5_pac_add_buffer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          354
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - k5_pac_locate_buffer
        - make_data
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:48,5'
          Dst:             __assert_fail
        - Src:             'pac.c:51,9'
          Dst:             k5_pac_locate_buffer
        - Src:             'pac.c:56,13'
          Dst:             realloc
        - Src:             'pac.c:65,13'
          Dst:             realloc
        - Src:             'pac.c:86,5'
          Dst:             __assert_fail
        - Src:             'pac.c:100,21'
          Dst:             make_data
    - functionName:    mspac_get_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          196
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - k5_pac_locate_buffer
        - krb5_pac_get_buffer
        - krb5int_copy_data_contents
        - krb5int_trace
        - mspac_attr2type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:1035,9'
          Dst:             krb5int_trace
        - Src:             'pac.c:1039,11'
          Dst:             mspac_attr2type
        - Src:             'pac.c:1046,19'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:1052,19'
          Dst:             krb5_pac_get_buffer
        - Src:             'pac.c:1054,19'
          Dst:             k5_pac_locate_buffer
    - functionName:    krb5_pac_get_buffer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_pac_locate_buffer
        - k5memdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:168,11'
          Dst:             k5_pac_locate_buffer
        - Src:             'pac.c:172,22'
          Dst:             k5memdup
    - functionName:    mspac_get_attribute_types
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          192
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - asprintf
        - calloc
        - krb5int_copy_data_contents
        - krb5int_free_data_list
        - mspac_type2attr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:968,13'
          Dst:             calloc
        - Src:             'pac.c:975,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:985,15'
          Dst:             mspac_type2attr
        - Src:             'pac.c:987,19'
          Dst:             krb5int_copy_data_contents
        - Src:             'pac.c:993,22'
          Dst:             asprintf
        - Src:             'pac.c:1010,5'
          Dst:             krb5int_free_data_list
    - functionName:    mspac_request_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_pac_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:875,9'
          Dst:             krb5_pac_free
    - functionName:    mspac_request_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mspac_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_kdc_verify_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          324
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - encode_krb5_enc_tkt_part
        - k5_pac_should_have_ticket_signature
        - krb5_decode_authdata_container
        - krb5_encode_authdata_container
        - krb5_free_authdata
        - krb5_free_data
        - krb5_pac_free
        - krb5_pac_parse
        - verify_checksum
        - verify_pac_checksums
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:624,15'
          Dst:             krb5_decode_authdata_container
        - Src:             'pac.c:637,9'
          Dst:             krb5_free_authdata
        - Src:             'pac.c:647,11'
          Dst:             krb5_pac_parse
        - Src:             'pac.c:651,22'
          Dst:             k5_pac_should_have_ticket_signature
        - Src:             'pac.c:657,15'
          Dst:             krb5_encode_authdata_container
        - Src:             'pac.c:665,15'
          Dst:             encode_krb5_enc_tkt_part
        - Src:             'pac.c:670,15'
          Dst:             verify_checksum
        - Src:             'pac.c:676,11'
          Dst:             verify_pac_checksums
        - Src:             'pac.c:684,5'
          Dst:             krb5_pac_free
        - Src:             'pac.c:685,5'
          Dst:             krb5_free_data
        - Src:             'pac.c:686,5'
          Dst:             krb5_free_authdata
        - Src:             'pac.c:687,5'
          Dst:             krb5_free_authdata
    - functionName:    k5_pac_should_have_ticket_signature
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - data_eq_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:586,9'
          Dst:             data_eq_string
        - Src:             'pac.c:588,32'
          Dst:             data_eq_string
        - Src:             'pac.c:589,9'
          Dst:             data_eq_string
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    k5_seconds_since_1970_to_time
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_pac_get_types
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pac.c:188,18'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_add_empty_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
        - k5_add_pa_data_from_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'padata.c:124,23'
          Dst:             empty_data
        - Src:             'padata.c:126,12'
          Dst:             k5_add_pa_data_from_data
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    k5_add_pa_data_from_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - empty_data
        - k5_add_pa_data_element
        - k5_alloc_pa_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'padata.c:107,11'
          Dst:             k5_alloc_pa_data
        - Src:             'padata.c:112,11'
          Dst:             k5_add_pa_data_element
        - Src:             'padata.c:117,13'
          Dst:             empty_data
    - functionName:    k5_alloc_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_add_pa_data_element
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'padata.c:90,15'
          Dst:             realloc
    - functionName:    k5_free_pa_data_element
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_find_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/padata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    krb5_parse_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_parse_name_flags
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parse.c:237,12'
          Dst:             krb5_parse_name_flags
    - functionName:    krb5_parse_name_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          213
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - allocate_princ
        - dgettext
        - empty_data
        - k5_infer_principal_type
        - krb5_free_data_contents
        - krb5_free_principal
        - krb5_get_default_realm
        - krb5_set_error_message
        - parse_name_into_princ
        - string2data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parse.c:191,11'
          Dst:             allocate_princ
        - Src:             'parse.c:194,5'
          Dst:             parse_name_into_princ
        - Src:             'parse.c:202,23'
          Dst:             dgettext
        - Src:             'parse.c:201,13'
          Dst:             krb5_set_error_message
        - Src:             'parse.c:206,19'
          Dst:             krb5_get_default_realm
        - Src:             'parse.c:209,13'
          Dst:             krb5_free_data_contents
        - Src:             'parse.c:210,28'
          Dst:             string2data
        - Src:             'parse.c:214,33'
          Dst:             dgettext
        - Src:             'parse.c:214,9'
          Dst:             krb5_set_error_message
        - Src:             'parse.c:217,9'
          Dst:             krb5_free_data_contents
        - Src:             'parse.c:218,24'
          Dst:             empty_data
        - Src:             'parse.c:222,9'
          Dst:             k5_infer_principal_type
        - Src:             'parse.c:229,5'
          Dst:             krb5_free_principal
    - functionName:    allocate_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          379
      EdgeCount:       69
      CyclomaticComplexity: 20
      functionsReached:
        - empty_data
        - k5alloc
        - krb5_free_principal
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parse.c:51,13'
          Dst:             k5alloc
        - Src:             'parse.c:54,19'
          Dst:             k5alloc
        - Src:             'parse.c:57,20'
          Dst:             empty_data
        - Src:             'parse.c:58,22'
          Dst:             empty_data
        - Src:             'parse.c:70,25'
          Dst:             realloc
        - Src:             'parse.c:79,25'
          Dst:             empty_data
        - Src:             'parse.c:107,31'
          Dst:             k5alloc
        - Src:             'parse.c:111,25'
          Dst:             k5alloc
        - Src:             'parse.c:119,5'
          Dst:             krb5_free_principal
    - functionName:    parse_name_into_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          300
      EdgeCount:       73
      CyclomaticComplexity: 15
      functionsReached:
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parse.c:142,13'
          Dst:             __assert_fail
        - Src:             'parse.c:143,13'
          Dst:             __assert_fail
        - Src:             'parse.c:144,13'
          Dst:             __assert_fail
        - Src:             'parse.c:149,13'
          Dst:             __assert_fail
        - Src:             'parse.c:168,13'
          Dst:             __assert_fail
        - Src:             'parse.c:172,5'
          Dst:             __assert_fail
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    find_in_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:182,13'
          Dst:             strcmp
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    make_plugin_mapping
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - free_plugin_mapping
        - k5_path_join
        - k5alloc
        - k5memdup0
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:109,11'
          Dst:             k5alloc
        - Src:             'plugin.c:113,20'
          Dst:             k5memdup0
        - Src:             'plugin.c:117,13'
          Dst:             k5_path_join
        - Src:             'plugin.c:125,5'
          Dst:             free_plugin_mapping
    - functionName:    free_plugin_mapping
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_close_plugin
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:84,9'
          Dst:             krb5int_close_plugin
    - functionName:    parse_modstr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dgettext
        - krb5_set_error_message
        - make_plugin_mapping
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:166,11'
          Dst:             strchr
        - Src:             'plugin.c:169,19'
          Dst:             dgettext
        - Src:             'plugin.c:168,9'
          Dst:             krb5_set_error_message
        - Src:             'plugin.c:173,12'
          Dst:             make_plugin_mapping
    - functionName:    filter_enabled_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          133
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - free_plugin_mapping
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:285,17'
          Dst:             strcmp
        - Src:             'plugin.c:297,9'
          Dst:             free_plugin_mapping
    - functionName:    remove_disabled_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - find_in_list
        - free_plugin_mapping
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:263,13'
          Dst:             find_in_list
        - Src:             'plugin.c:264,13'
          Dst:             free_plugin_mapping
    - functionName:    make_full_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          272
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - calloc
        - free_mapping_list
        - free_plugin_mapping
        - parse_modstr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:219,12'
          Dst:             calloc
        - Src:             'plugin.c:225,15'
          Dst:             parse_modstr
        - Src:             'plugin.c:227,13'
          Dst:             free_mapping_list
        - Src:             'plugin.c:235,5'
          Dst:             __assert_fail
        - Src:             'plugin.c:240,17'
          Dst:             strcmp
        - Src:             'plugin.c:241,17'
          Dst:             free_plugin_mapping
    - functionName:    free_mapping_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - free_plugin_mapping
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:94,9'
          Dst:             free_plugin_mapping
    - functionName:    get_profile_var
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - profile_get_values
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:201,11'
          Dst:             profile_get_values
    - functionName:    k5_plugin_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - free_mapping_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:509,9'
          Dst:             free_mapping_list
    - functionName:    k5_plugin_register_dyn
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asprintf
        - get_interface
        - k5_path_join
        - register_module
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:485,42'
          Dst:             get_interface
        - Src:             'plugin.c:492,9'
          Dst:             asprintf
        - Src:             'plugin.c:494,11'
          Dst:             k5_path_join
        - Src:             'plugin.c:498,11'
          Dst:             register_module
    - functionName:    get_interface
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_module
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - make_plugin_mapping
        - realloc
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:145,12'
          Dst:             realloc
        - Src:             'plugin.c:152,50'
          Dst:             strlen
        - Src:             'plugin.c:152,12'
          Dst:             make_plugin_mapping
    - functionName:    k5_plugin_register
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_interface
        - register_module
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:467,42'
          Dst:             get_interface
        - Src:             'plugin.c:477,12'
          Dst:             register_module
    - functionName:    k5_plugin_free_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_plugin_load_all
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          165
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - calloc
        - configure_interface
        - get_interface
        - load_if_needed
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:426,42'
          Dst:             get_interface
        - Src:             'plugin.c:433,11'
          Dst:             configure_interface
        - Src:             'plugin.c:440,12'
          Dst:             calloc
        - Src:             'plugin.c:448,9'
          Dst:             load_if_needed
    - functionName:    configure_interface
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          145
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - filter_enabled_modules
        - get_profile_var
        - make_full_list
        - profile_free_list
        - remove_disabled_modules
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:317,11'
          Dst:             get_profile_var
        - Src:             'plugin.c:320,11'
          Dst:             get_profile_var
        - Src:             'plugin.c:323,11'
          Dst:             get_profile_var
        - Src:             'plugin.c:329,15'
          Dst:             make_full_list
        - Src:             'plugin.c:336,9'
          Dst:             remove_disabled_modules
        - Src:             'plugin.c:340,9'
          Dst:             filter_enabled_modules
        - Src:             'plugin.c:343,5'
          Dst:             profile_free_list
        - Src:             'plugin.c:344,5'
          Dst:             profile_free_list
        - Src:             'plugin.c:345,5'
          Dst:             profile_free_list
    - functionName:    load_if_needed
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          164
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - asprintf
        - krb5int_close_plugin
        - krb5int_get_plugin_func
        - krb5int_open_plugin
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:362,9'
          Dst:             asprintf
        - Src:             'plugin.c:365,11'
          Dst:             krb5int_open_plugin
        - Src:             'plugin.c:367,9'
          Dst:             krb5int_trace
        - Src:             'plugin.c:371,11'
          Dst:             krb5int_get_plugin_func
        - Src:             'plugin.c:373,9'
          Dst:             krb5int_trace
        - Src:             'plugin.c:385,9'
          Dst:             krb5int_close_plugin
    - functionName:    k5_plugin_load
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          131
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - configure_interface
        - dgettext
        - get_interface
        - krb5_set_error_message
        - load_if_needed
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugin.c:396,42'
          Dst:             get_interface
        - Src:             'plugin.c:401,11'
          Dst:             configure_interface
        - Src:             'plugin.c:406,13'
          Dst:             strcmp
        - Src:             'plugin.c:407,13'
          Dst:             load_if_needed
        - Src:             'plugin.c:416,15'
          Dst:             dgettext
        - Src:             'plugin.c:415,5'
          Dst:             krb5_set_error_message
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_principal2salt_norealm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pr_to_salt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - principal2salt_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pr_to_salt.c:81,12'
          Dst:             principal2salt_internal
    - functionName:    principal2salt_internal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pr_to_salt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          214
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - alloc_data
        - empty_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pr_to_salt.c:43,12'
          Dst:             empty_data
        - Src:             'pr_to_salt.c:53,9'
          Dst:             alloc_data
    - functionName:    krb5_principal2salt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/pr_to_salt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - principal2salt_internal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pr_to_salt.c:74,12'
          Dst:             principal2salt_internal
    - functionName:    clpreauth_process
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    previously_failed
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clpreauth_is_real
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clpreauth_prep_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pa_type_allowed
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    grow_pa_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:413,15'
          Dst:             realloc
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    disable_fallback
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_cc_config
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_object_set
        - k5_json_release
        - k5_json_string_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:545,11'
          Dst:             k5_json_string_create
        - Src:             'preauth2.c:549,11'
          Dst:             k5_json_object_set
        - Src:             'preauth2.c:550,5'
          Dst:             k5_json_release
    - functionName:    get_cc_config
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_get_tid
        - k5_json_object_get
        - k5_json_string_utf8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:524,13'
          Dst:             k5_json_object_get
        - Src:             'preauth2.c:528,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth2.c:531,12'
          Dst:             k5_json_string_utf8
    - functionName:    need_as_key
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    responder_get_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_response_items_get_answer
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:500,9'
          Dst:             strcmp
        - Src:             'preauth2.c:502,12'
          Dst:             k5_response_items_get_answer
    - functionName:    responder_ask_question
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_response_items_ask_question
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:487,9'
          Dst:             strcmp
        - Src:             'preauth2.c:489,12'
          Dst:             k5_response_items_ask_question
    - functionName:    get_preauth_time
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_init_creds_current_time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:476,12'
          Dst:             k5_init_creds_current_time
    - functionName:    set_as_key
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_copy_keyblock_contents
        - krb5_free_keyblock_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:467,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'preauth2.c:468,12'
          Dst:             krb5_copy_keyblock_contents
    - functionName:    get_as_key
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fast_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_etype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    clpreauth_gic_opts
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_preauth_supply_preauth_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - clpreauth_gic_opts
        - dgettext
        - k5_init_preauth_context
        - krb5_prepend_error_message
        - krb5_set_error_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:1053,9'
          Dst:             k5_init_preauth_context
        - Src:             'preauth2.c:1057,23'
          Dst:             dgettext
        - Src:             'preauth2.c:1056,13'
          Dst:             krb5_set_error_message
        - Src:             'preauth2.c:1068,15'
          Dst:             clpreauth_gic_opts
        - Src:             'preauth2.c:1070,41'
          Dst:             dgettext
        - Src:             'preauth2.c:1070,13'
          Dst:             krb5_prepend_error_message
    - functionName:    k5_init_preauth_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          276
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - calloc
        - clpreauth_encrypted_challenge_initvt
        - clpreauth_encrypted_timestamp_initvt
        - clpreauth_otp_initvt
        - clpreauth_sam2_initvt
        - free_handles
        - k5_plugin_free_modules
        - k5_plugin_load_all
        - k5_plugin_register
        - k5_plugin_register_dyn
        - krb5int_trace
        - search_module_list
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:134,5'
          Dst:             k5_plugin_register_dyn
        - Src:             'preauth2.c:137,5'
          Dst:             k5_plugin_register_dyn
        - Src:             'preauth2.c:139,5'
          Dst:             k5_plugin_register
        - Src:             'preauth2.c:139,5'
          Dst:             clpreauth_encrypted_challenge_initvt
        - Src:             'preauth2.c:142,5'
          Dst:             k5_plugin_register
        - Src:             'preauth2.c:142,5'
          Dst:             clpreauth_encrypted_timestamp_initvt
        - Src:             'preauth2.c:145,5'
          Dst:             k5_plugin_register
        - Src:             'preauth2.c:145,5'
          Dst:             clpreauth_sam2_initvt
        - Src:             'preauth2.c:147,5'
          Dst:             k5_plugin_register
        - Src:             'preauth2.c:147,5'
          Dst:             clpreauth_otp_initvt
        - Src:             'preauth2.c:151,9'
          Dst:             k5_plugin_load_all
        - Src:             'preauth2.c:156,12'
          Dst:             calloc
        - Src:             'preauth2.c:163,13'
          Dst:             calloc
        - Src:             'preauth2.c:175,17'
          Dst:             search_module_list
        - Src:             'preauth2.c:177,17'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:204,5'
          Dst:             k5_plugin_free_modules
        - Src:             'preauth2.c:205,5'
          Dst:             free_handles
    - functionName:    search_module_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_handles
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          376
      EdgeCount:       88
      CyclomaticComplexity: 24
      functionsReached:
        - clpreauth_is_real
        - clpreauth_process
        - dgettext
        - find_module
        - grow_pa_list
        - k5_clear_error
        - k5_preauth_note_failed
        - k5_restore_ctx_error
        - k5_save_ctx_error
        - krb5_free_pa_data
        - krb5_wrap_error_message
        - krb5int_trace
        - pa_type_allowed
        - previously_failed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:671,26'
          Dst:             pa_type_allowed
        - Src:             'preauth2.c:673,17'
          Dst:             find_module
        - Src:             'preauth2.c:677,17'
          Dst:             clpreauth_is_real
        - Src:             'preauth2.c:680,25'
          Dst:             previously_failed
        - Src:             'preauth2.c:684,19'
          Dst:             clpreauth_process
        - Src:             'preauth2.c:690,13'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:694,23'
          Dst:             grow_pa_list
        - Src:             'preauth2.c:696,21'
          Dst:             krb5_free_pa_data
        - Src:             'preauth2.c:710,17'
          Dst:             k5_save_ctx_error
        - Src:             'preauth2.c:714,23'
          Dst:             k5_preauth_note_failed
        - Src:             'preauth2.c:724,19'
          Dst:             k5_restore_ctx_error
        - Src:             'preauth2.c:726,24'
          Dst:             dgettext
        - Src:             'preauth2.c:725,13'
          Dst:             krb5_wrap_error_message
        - Src:             'preauth2.c:732,5'
          Dst:             k5_clear_error
    - functionName:    find_module
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - search_module_list
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:110,9'
          Dst:             search_module_list
    - functionName:    k5_preauth_note_failed
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:217,14'
          Dst:             realloc
    - functionName:    fill_response_items
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - clpreauth_prep_questions
        - find_module
        - k5_response_items_reset
        - pa_type_allowed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:955,5'
          Dst:             k5_response_items_reset
        - Src:             'preauth2.c:958,14'
          Dst:             pa_type_allowed
        - Src:             'preauth2.c:960,13'
          Dst:             find_module
        - Src:             'preauth2.c:964,15'
          Dst:             clpreauth_prep_questions
    - functionName:    k5_preauth
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          219
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - copy_cookie
        - fill_response_items
        - k5_get_etype_info
        - k5_gic_opt_get_responder
        - k5_init_preauth_context
        - k5_response_items_empty
        - krb5_free_pa_data
        - krb5int_trace
        - process_pa_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:992,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:995,11'
          Dst:             k5_get_etype_info
        - Src:             'preauth2.c:1000,11'
          Dst:             copy_cookie
        - Src:             'preauth2.c:1005,5'
          Dst:             k5_init_preauth_context
        - Src:             'preauth2.c:1013,11'
          Dst:             fill_response_items
        - Src:             'preauth2.c:1018,5'
          Dst:             k5_gic_opt_get_responder
        - Src:             'preauth2.c:1019,31'
          Dst:             k5_response_items_empty
        - Src:             'preauth2.c:1025,11'
          Dst:             process_pa_data
        - Src:             'preauth2.c:1030,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:1035,5'
          Dst:             krb5_free_pa_data
    - functionName:    k5_get_etype_info
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          323
      EdgeCount:       55
      CyclomaticComplexity: 14
      functionsReached:
        - decode_krb5_etype_info
        - decode_krb5_etype_info2
        - empty_data
        - get_salt
        - krb5_c_valid_enctype
        - krb5_free_data_contents
        - krb5_free_etype_info
        - krb5int_find_pa_data
        - krb5int_trace
        - make_data
        - padata2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:807,10'
          Dst:             krb5int_find_pa_data
        - Src:             'preauth2.c:809,13'
          Dst:             padata2data
        - Src:             'preauth2.c:810,15'
          Dst:             decode_krb5_etype_info2
        - Src:             'preauth2.c:812,14'
          Dst:             krb5int_find_pa_data
        - Src:             'preauth2.c:814,17'
          Dst:             padata2data
        - Src:             'preauth2.c:815,19'
          Dst:             decode_krb5_etype_info
        - Src:             'preauth2.c:821,16'
          Dst:             get_salt
        - Src:             'preauth2.c:830,17'
          Dst:             krb5_c_valid_enctype
        - Src:             'preauth2.c:842,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth2.c:844,21'
          Dst:             make_data
        - Src:             'preauth2.c:848,21'
          Dst:             empty_data
        - Src:             'preauth2.c:851,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth2.c:853,24'
          Dst:             empty_data
        - Src:             'preauth2.c:854,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:857,5'
          Dst:             krb5_free_etype_info
    - functionName:    copy_cookie
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - grow_pa_list
        - k5alloc
        - k5memdup
        - krb5int_find_pa_data
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:869,14'
          Dst:             krb5int_find_pa_data
        - Src:             'preauth2.c:872,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:873,10'
          Dst:             k5alloc
        - Src:             'preauth2.c:877,20'
          Dst:             k5memdup
        - Src:             'preauth2.c:880,11'
          Dst:             grow_pa_list
    - functionName:    padata2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_salt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          223
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_data
        - krb5_free_data_contents
        - krb5int_copy_data_contents
        - krb5int_find_pa_data
        - krb5int_trace
        - memchr
        - padata2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:757,10'
          Dst:             krb5int_find_pa_data
        - Src:             'preauth2.c:759,14'
          Dst:             krb5int_find_pa_data
        - Src:             'preauth2.c:764,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth2.c:765,9'
          Dst:             padata2data
        - Src:             'preauth2.c:766,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth2.c:773,13'
          Dst:             memchr
        - Src:             'preauth2.c:781,9'
          Dst:             krb5_free_data_contents
        - Src:             'preauth2.c:782,15'
          Dst:             alloc_data
        - Src:             'preauth2.c:789,5'
          Dst:             krb5int_trace
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    clpreauth_tryagain
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        15
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_preauth_tryagain
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          212
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - clpreauth_tryagain
        - copy_cookie
        - find_module
        - k5_preauth_note_failed
        - krb5_free_pa_data
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:910,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:912,9'
          Dst:             find_module
        - Src:             'preauth2.c:917,11'
          Dst:             clpreauth_tryagain
        - Src:             'preauth2.c:923,5'
          Dst:             krb5int_trace
        - Src:             'preauth2.c:927,9'
          Dst:             k5_preauth_note_failed
        - Src:             'preauth2.c:932,11'
          Dst:             copy_cookie
        - Src:             'preauth2.c:934,9'
          Dst:             krb5_free_pa_data
        - Src:             'preauth2.c:938,5'
          Dst:             krb5int_trace
    - functionName:    krb5_responder_set_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_response_items_set_answer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:625,12'
          Dst:             k5_response_items_set_answer
    - functionName:    krb5_responder_get_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_response_items_get_challenge
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:615,12'
          Dst:             k5_response_items_get_challenge
    - functionName:    krb5_responder_list_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_response_items_list_questions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:605,12'
          Dst:             k5_response_items_list_questions
    - functionName:    grow_ktypes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:396,14'
          Dst:             realloc
    - functionName:    k5_preauth_prepare_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          114
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - grow_ktypes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:598,13'
          Dst:             grow_ktypes
    - functionName:    k5_preauth_check_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dgettext
        - krb5_set_error_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:315,19'
          Dst:             dgettext
        - Src:             'preauth2.c:314,9'
          Dst:             krb5_set_error_message
    - functionName:    k5_preauth_request_context_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          158
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - krb5int_trace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:300,9'
          Dst:             krb5int_trace
    - functionName:    k5_preauth_request_context_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          155
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
        - k5_init_preauth_context
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:253,9'
          Dst:             k5_init_preauth_context
        - Src:             'preauth2.c:259,14'
          Dst:             calloc
        - Src:             'preauth2.c:267,23'
          Dst:             calloc
    - functionName:    k5_free_preauth_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_handles
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth2.c:236,5'
          Dst:             free_handles
    - functionName:    ec_process
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_ec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          435
      EdgeCount:       87
      CyclomaticComplexity: 23
      functionsReached:
        - calloc
        - decode_krb5_enc_data
        - encode_krb5_enc_data
        - encode_krb5_pa_enc_ts
        - krb5_c_decrypt
        - krb5_c_fx_cf2_simple
        - krb5_encrypt_helper
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_free_enc_data
        - krb5_free_keyblock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_ec.c:69,18'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'preauth_ec.c:73,22'
          Dst:             decode_krb5_enc_data
        - Src:             'preauth_ec.c:82,22'
          Dst:             krb5_c_decrypt
        - Src:             'preauth_ec.c:91,13'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_ec.c:95,13'
          Dst:             krb5_free_enc_data
        - Src:             'preauth_ec.c:107,22'
          Dst:             encode_krb5_pa_enc_ts
        - Src:             'preauth_ec.c:109,22'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'preauth_ec.c:114,22'
          Dst:             krb5_encrypt_helper
        - Src:             'preauth_ec.c:118,13'
          Dst:             krb5_free_data
        - Src:             'preauth_ec.c:121,22'
          Dst:             encode_krb5_enc_data
        - Src:             'preauth_ec.c:122,13'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_ec.c:125,18'
          Dst:             calloc
        - Src:             'preauth_ec.c:130,21'
          Dst:             calloc
        - Src:             'preauth_ec.c:144,9'
          Dst:             krb5_free_data
        - Src:             'preauth_ec.c:147,9'
          Dst:             krb5_free_keyblock
    - functionName:    ec_prep_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_ec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clpreauth_encrypted_challenge_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_ec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    encts_process
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_encts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          289
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - dgettext
        - empty_data
        - encode_krb5_enc_data
        - encode_krb5_pa_enc_ts
        - k5alloc
        - k5calloc
        - krb5_encrypt_helper
        - krb5_free_data
        - krb5_set_error_message
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_encts.c:66,27'
          Dst:             empty_data
        - Src:             'preauth_encts.c:69,9'
          Dst:             krb5int_trace
        - Src:             'preauth_encts.c:71,19'
          Dst:             dgettext
        - Src:             'preauth_encts.c:70,9'
          Dst:             krb5_set_error_message
        - Src:             'preauth_encts.c:78,5'
          Dst:             krb5int_trace
        - Src:             'preauth_encts.c:92,11'
          Dst:             encode_krb5_pa_enc_ts
        - Src:             'preauth_encts.c:96,11'
          Dst:             krb5_encrypt_helper
        - Src:             'preauth_encts.c:100,5'
          Dst:             krb5int_trace
        - Src:             'preauth_encts.c:103,11'
          Dst:             encode_krb5_enc_data
        - Src:             'preauth_encts.c:107,10'
          Dst:             k5calloc
        - Src:             'preauth_encts.c:111,13'
          Dst:             k5alloc
        - Src:             'preauth_encts.c:127,5'
          Dst:             krb5_free_data
        - Src:             'preauth_encts.c:128,5'
          Dst:             krb5_free_data
    - functionName:    encts_prep_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_encts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clpreauth_encrypted_timestamp_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_encts.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    codec_decode_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          203
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - calloc
        - codec_value_to_int32
        - codec_value_to_string
        - free_tokeninfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:270,10'
          Dst:             calloc
        - Src:             'preauth_otp.c:274,14'
          Dst:             codec_value_to_int32
        - Src:             'preauth_otp.c:278,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:282,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:286,14'
          Dst:             codec_value_to_int32
        - Src:             'preauth_otp.c:292,14'
          Dst:             codec_value_to_int32
        - Src:             'preauth_otp.c:298,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:302,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:309,5'
          Dst:             free_tokeninfo
    - functionName:    codec_value_to_int32
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_object_get
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:118,11'
          Dst:             k5_json_object_get
        - Src:             'preauth_otp.c:122,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:125,14'
          Dst:             k5_json_number_value
    - functionName:    codec_value_to_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_get_tid
        - k5_json_object_get
        - k5_json_string_utf8
        - strdup
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:63,11'
          Dst:             k5_json_object_get
        - Src:             'preauth_otp.c:67,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:70,18'
          Dst:             k5_json_string_utf8
        - Src:             'preauth_otp.c:70,11'
          Dst:             strdup
    - functionName:    free_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    otpvalue_matches_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          120
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:459,28'
          Dst:             strlen
    - functionName:    isdigit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    isxdigit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    isalnum
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    collect_pin
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dgettext
        - doprompt
        - empty_data
        - make_data
        - strdup
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:589,20'
          Dst:             empty_data
        - Src:             'preauth_otp.c:595,23'
          Dst:             dgettext
        - Src:             'preauth_otp.c:594,14'
          Dst:             doprompt
        - Src:             'preauth_otp.c:600,21'
          Dst:             strdup
        - Src:             'preauth_otp.c:600,37'
          Dst:             strlen
        - Src:             'preauth_otp.c:600,11'
          Dst:             make_data
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    doprompt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          105
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_set_prompt_types
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:490,20'
          Dst:             make_data
        - Src:             'preauth_otp.c:496,5'
          Dst:             k5_set_prompt_types
        - Src:             'preauth_otp.c:498,5'
          Dst:             k5_set_prompt_types
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    filter_tokeninfos
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          142
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - dgettext
        - krb5_set_error_message
        - otpvalue_matches_tokeninfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:695,16'
          Dst:             calloc
        - Src:             'preauth_otp.c:701,13'
          Dst:             otpvalue_matches_tokeninfo
        - Src:             'preauth_otp.c:709,19'
          Dst:             dgettext
        - Src:             'preauth_otp.c:708,9'
          Dst:             krb5_set_error_message
    - functionName:    make_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asprintf
        - dgettext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:566,18'
          Dst:             dgettext
        - Src:             'preauth_otp.c:565,9'
          Dst:             asprintf
    - functionName:    prompt_for_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          165
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - dgettext
        - doprompt
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_init_dynamic
        - strtoul
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:517,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'preauth_otp.c:518,22'
          Dst:             dgettext
        - Src:             'preauth_otp.c:518,5'
          Dst:             k5_buf_add
        - Src:             'preauth_otp.c:520,59'
          Dst:             dgettext
        - Src:             'preauth_otp.c:520,9'
          Dst:             k5_buf_add_fmt
        - Src:             'preauth_otp.c:521,9'
          Dst:             k5_buf_add_len
        - Src:             'preauth_otp.c:522,9'
          Dst:             k5_buf_add
        - Src:             'preauth_otp.c:524,14'
          Dst:             k5_buf_cstring
        - Src:             'preauth_otp.c:530,27'
          Dst:             dgettext
        - Src:             'preauth_otp.c:529,18'
          Dst:             doprompt
        - Src:             'preauth_otp.c:534,9'
          Dst:             __errno_location
        - Src:             'preauth_otp.c:535,13'
          Dst:             strtoul
        - Src:             'preauth_otp.c:536,13'
          Dst:             __errno_location
        - Src:             'preauth_otp.c:537,22'
          Dst:             __errno_location
        - Src:             'preauth_otp.c:549,5'
          Dst:             k5_buf_free
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    codec_value_to_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - codec_value_to_string
        - string2data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:85,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:89,13'
          Dst:             string2data
    - functionName:    set_pa_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          108
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - encode_krb5_pa_otp_req
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:825,11'
          Dst:             calloc
        - Src:             'preauth_otp.c:828,14'
          Dst:             calloc
        - Src:             'preauth_otp.c:836,9'
          Dst:             encode_krb5_pa_otp_req
    - functionName:    encrypt_nonce
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - encode_krb5_pa_otp_enc_req
        - krb5_encrypt_helper
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:434,14'
          Dst:             encode_krb5_pa_otp_enc_req
        - Src:             'preauth_otp.c:439,14'
          Dst:             krb5_encrypt_helper
        - Src:             'preauth_otp.c:441,5'
          Dst:             krb5_free_data
    - functionName:    save_config_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1045
      functionLinenumberEnd: 1062
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          146
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - asprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1048,9'
          Dst:             asprintf
        - Src:             'preauth_otp.c:1053,9'
          Dst:             asprintf
        - Src:             'preauth_otp.c:1058,9'
          Dst:             asprintf
    - functionName:    make_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          269
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - asprintf
        - calloc
        - empty_data
        - k5_free_pa_otp_req
        - krb5_free_data_contents
        - krb5int_copy_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:622,11'
          Dst:             calloc
        - Src:             'preauth_otp.c:628,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth_otp.c:634,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth_otp.c:638,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth_otp.c:642,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth_otp.c:653,22'
          Dst:             krb5int_copy_data_contents
        - Src:             'preauth_otp.c:657,13'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_otp.c:658,22'
          Dst:             asprintf
        - Src:             'preauth_otp.c:663,34'
          Dst:             empty_data
        - Src:             'preauth_otp.c:674,5'
          Dst:             k5_free_pa_otp_req
    - functionName:    prompt_for_token
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          305
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - __assert_fail
        - collect_pin
        - dgettext
        - doprompt
        - filter_tokeninfos
        - krb5_free_data_contents
        - make_challenge
        - make_data
        - prompt_for_tokeninfo
        - strdup
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:762,22'
          Dst:             prompt_for_tokeninfo
        - Src:             'preauth_otp.c:769,18'
          Dst:             make_challenge
        - Src:             'preauth_otp.c:776,23'
          Dst:             dgettext
        - Src:             'preauth_otp.c:775,14'
          Dst:             doprompt
        - Src:             'preauth_otp.c:783,18'
          Dst:             filter_tokeninfos
        - Src:             'preauth_otp.c:789,22'
          Dst:             prompt_for_tokeninfo
        - Src:             'preauth_otp.c:797,5'
          Dst:             __assert_fail
        - Src:             'preauth_otp.c:800,23'
          Dst:             strdup
        - Src:             'preauth_otp.c:800,41'
          Dst:             strlen
        - Src:             'preauth_otp.c:800,13'
          Dst:             make_data
        - Src:             'preauth_otp.c:805,14'
          Dst:             collect_pin
        - Src:             'preauth_otp.c:807,9'
          Dst:             krb5_free_data_contents
    - functionName:    codec_decode_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          161
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - codec_value_to_data
        - codec_value_to_int32
        - k5_json_decode
        - k5_json_get_tid
        - k5_json_release
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:388,14'
          Dst:             k5_json_decode
        - Src:             'preauth_otp.c:392,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:395,14'
          Dst:             codec_value_to_int32
        - Src:             'preauth_otp.c:401,22'
          Dst:             codec_value_to_data
        - Src:             'preauth_otp.c:405,22'
          Dst:             codec_value_to_data
        - Src:             'preauth_otp.c:407,17'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_otp.c:420,5'
          Dst:             k5_json_release
    - functionName:    codec_data_to_value
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_object_set
        - k5_json_release
        - k5_json_string_create_len
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:103,14'
          Dst:             k5_json_string_create_len
        - Src:             'preauth_otp.c:107,14'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:108,5'
          Dst:             k5_json_release
    - functionName:    codec_int32_to_value
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_number_create
        - k5_json_object_set
        - k5_json_release
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:139,14'
          Dst:             k5_json_number_create
        - Src:             'preauth_otp.c:143,14'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:144,5'
          Dst:             k5_json_release
    - functionName:    codec_encode_tokeninfo
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          211
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - codec_data_to_value
        - codec_int32_to_value
        - k5_json_object_create
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:156,14'
          Dst:             k5_json_object_create
        - Src:             'preauth_otp.c:169,14'
          Dst:             codec_int32_to_value
        - Src:             'preauth_otp.c:173,14'
          Dst:             codec_data_to_value
        - Src:             'preauth_otp.c:177,14'
          Dst:             codec_data_to_value
        - Src:             'preauth_otp.c:181,14'
          Dst:             codec_int32_to_value
        - Src:             'preauth_otp.c:187,18'
          Dst:             codec_int32_to_value
        - Src:             'preauth_otp.c:192,14'
          Dst:             codec_data_to_value
        - Src:             'preauth_otp.c:196,14'
          Dst:             codec_data_to_value
        - Src:             'preauth_otp.c:204,5'
          Dst:             k5_json_release
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    is_printable_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:863,14'
          Dst:             __ctype_b_loc
    - functionName:    is_tokeninfo_supported
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          90
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - is_printable_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:888,10'
          Dst:             is_printable_string
        - Src:             'preauth_otp.c:892,10'
          Dst:             is_printable_string
    - functionName:    codec_encode_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          175
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - codec_encode_tokeninfo
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_encode
        - k5_json_object_create
        - k5_json_object_set
        - k5_json_release
        - k5_json_string_create_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:219,14'
          Dst:             k5_json_object_create
        - Src:             'preauth_otp.c:224,18'
          Dst:             k5_json_string_create_len
        - Src:             'preauth_otp.c:228,18'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:229,9'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:234,14'
          Dst:             k5_json_array_create
        - Src:             'preauth_otp.c:239,18'
          Dst:             codec_encode_tokeninfo
        - Src:             'preauth_otp.c:243,18'
          Dst:             k5_json_array_add
        - Src:             'preauth_otp.c:244,9'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:249,14'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:253,14'
          Dst:             k5_json_encode
        - Src:             'preauth_otp.c:258,5'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:259,5'
          Dst:             k5_json_release
    - functionName:    filter_config_tokeninfos
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 935
      functionLinenumberEnd: 976
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          278
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - data_eq_string
        - k5_free_otp_tokeninfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:948,14'
          Dst:             data_eq_string
        - Src:             'preauth_otp.c:951,14'
          Dst:             data_eq_string
        - Src:             'preauth_otp.c:954,14'
          Dst:             data_eq_string
        - Src:             'preauth_otp.c:969,13'
          Dst:             k5_free_otp_tokeninfo
    - functionName:    filter_supported_tokeninfos
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dgettext
        - is_tokeninfo_supported
        - k5_free_otp_tokeninfo
        - krb5_set_error_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:910,14'
          Dst:             is_tokeninfo_supported
        - Src:             'preauth_otp.c:911,13'
          Dst:             k5_free_otp_tokeninfo
        - Src:             'preauth_otp.c:922,45'
          Dst:             dgettext
        - Src:             'preauth_otp.c:922,5'
          Dst:             krb5_set_error_message
    - functionName:    krb5_responder_otp_challenge_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1258
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - free_tokeninfo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1265,9'
          Dst:             free_tokeninfo
    - functionName:    krb5_responder_otp_set_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1252
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          167
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - k5_json_encode
        - k5_json_number_create
        - k5_json_object_create
        - k5_json_object_set
        - k5_json_release
        - k5_json_string_create
        - krb5_responder_set_answer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1204,14'
          Dst:             k5_json_object_create
        - Src:             'preauth_otp.c:1208,14'
          Dst:             k5_json_number_create
        - Src:             'preauth_otp.c:1212,14'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:1213,5'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:1218,18'
          Dst:             k5_json_string_create
        - Src:             'preauth_otp.c:1222,18'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:1223,9'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:1229,18'
          Dst:             k5_json_string_create
        - Src:             'preauth_otp.c:1233,18'
          Dst:             k5_json_object_set
        - Src:             'preauth_otp.c:1234,9'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:1239,14'
          Dst:             k5_json_encode
        - Src:             'preauth_otp.c:1242,5'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:1244,14'
          Dst:             krb5_responder_set_answer
        - Src:             'preauth_otp.c:1250,5'
          Dst:             k5_json_release
    - functionName:    codec_decode_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         40
      ICount:          233
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - calloc
        - codec_decode_tokeninfo
        - codec_value_to_string
        - free_tokeninfo
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_decode
        - k5_json_get_tid
        - k5_json_object_get
        - k5_json_release
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:322,14'
          Dst:             k5_json_decode
        - Src:             'preauth_otp.c:326,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:329,11'
          Dst:             k5_json_object_get
        - Src:             'preauth_otp.c:333,9'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:336,11'
          Dst:             calloc
        - Src:             'preauth_otp.c:340,29'
          Dst:             k5_json_array_length
        - Src:             'preauth_otp.c:340,22'
          Dst:             calloc
        - Src:             'preauth_otp.c:345,14'
          Dst:             codec_value_to_string
        - Src:             'preauth_otp.c:349,21'
          Dst:             k5_json_array_length
        - Src:             'preauth_otp.c:350,15'
          Dst:             k5_json_array_get
        - Src:             'preauth_otp.c:351,13'
          Dst:             k5_json_get_tid
        - Src:             'preauth_otp.c:354,29'
          Dst:             codec_decode_tokeninfo
        - Src:             'preauth_otp.c:359,5'
          Dst:             k5_json_release
        - Src:             'preauth_otp.c:365,13'
          Dst:             free_tokeninfo
        - Src:             'preauth_otp.c:369,5'
          Dst:             k5_json_release
    - functionName:    krb5_responder_otp_get_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1175
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - codec_decode_challenge
        - krb5_responder_get_challenge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1179,14'
          Dst:             krb5_responder_get_challenge
        - Src:             'preauth_otp.c:1186,17'
          Dst:             codec_decode_challenge
    - functionName:    otp_client_request_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_free_pa_otp_challenge
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1146,5'
          Dst:             k5_free_pa_otp_challenge
    - functionName:    otp_client_process
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          227
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - codec_decode_answer
        - empty_data
        - encrypt_nonce
        - k5_free_pa_otp_req
        - krb5_free_data_contents
        - make_request
        - prompt_for_token
        - save_config_tokeninfo
        - set_pa_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1093,11'
          Dst:             empty_data
        - Src:             'preauth_otp.c:1094,13'
          Dst:             empty_data
        - Src:             'preauth_otp.c:1097,14'
          Dst:             codec_decode_answer
        - Src:             'preauth_otp.c:1102,18'
          Dst:             prompt_for_token
        - Src:             'preauth_otp.c:1109,14'
          Dst:             make_request
        - Src:             'preauth_otp.c:1114,5'
          Dst:             save_config_tokeninfo
        - Src:             'preauth_otp.c:1117,14'
          Dst:             encrypt_nonce
        - Src:             'preauth_otp.c:1127,14'
          Dst:             set_pa_data
        - Src:             'preauth_otp.c:1133,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_otp.c:1134,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_otp.c:1135,5'
          Dst:             k5_free_pa_otp_req
    - functionName:    otp_client_prep_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          142
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - codec_encode_challenge
        - decode_krb5_pa_otp_challenge
        - filter_config_tokeninfos
        - filter_supported_tokeninfos
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:1004,11'
          Dst:             make_data
        - Src:             'preauth_otp.c:1005,14'
          Dst:             decode_krb5_pa_otp_challenge
        - Src:             'preauth_otp.c:1012,14'
          Dst:             filter_supported_tokeninfos
        - Src:             'preauth_otp.c:1018,14'
          Dst:             filter_config_tokeninfos
        - Src:             'preauth_otp.c:1023,14'
          Dst:             codec_encode_challenge
    - functionName:    otp_client_request_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_otp.c:982,19'
          Dst:             calloc
    - functionName:    clpreauth_otp_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_otp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sam_challenge_banner
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_sam2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - dgettext
      functionUses:    4
      BranchProfiles:
        - Branch String:   'preauth_sam2.c:47,5'
          Branch Sides:    []
      Callsites:
        - Src:             'preauth_sam2.c:49,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:53,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:57,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:60,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:63,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:66,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:69,17'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:72,17'
          Dst:             dgettext
    - functionName:    sam2_process
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_sam2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         128
      ICount:          1124
      EdgeCount:       176
      CyclomaticComplexity: 50
      functionsReached:
        - decode_krb5_sam_challenge_2
        - decode_krb5_sam_challenge_2_body
        - dgettext
        - encode_krb5_enc_sam_response_enc_2
        - encode_krb5_sam_response_2
        - k5_set_prompt_types
        - krb5_c_encrypt
        - krb5_c_encrypt_length
        - krb5_c_is_keyed_cksum
        - krb5_c_string_to_key
        - krb5_c_valid_enctype
        - krb5_c_verify_checksum
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_free_keyblock_contents
        - krb5_free_sam_challenge_2
        - krb5_free_sam_challenge_2_body
        - krb5_principal2salt
        - sam_challenge_banner
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'preauth_sam2.c:112,19'
          Dst:             decode_krb5_sam_challenge_2
        - Src:             'preauth_sam2.c:115,14'
          Dst:             decode_krb5_sam_challenge_2_body
        - Src:             'preauth_sam2.c:118,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:123,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:124,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:129,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:130,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:134,10'
          Dst:             krb5_c_valid_enctype
        - Src:             'preauth_sam2.c:135,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:136,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:157,13'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:158,13'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:164,14'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:164,14'
          Dst:             strlen
        - Src:             'preauth_sam2.c:164,14'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:164,14'
          Dst:             strlen
        - Src:             'preauth_sam2.c:164,14'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:164,14'
          Dst:             dgettext
        - Src:             'preauth_sam2.c:163,5'
          Dst:             snprintf
        - Src:             'preauth_sam2.c:168,14'
          Dst:             sam_challenge_banner
        - Src:             'preauth_sam2.c:168,14'
          Dst:             strlen
        - Src:             'preauth_sam2.c:168,14'
          Dst:             sam_challenge_banner
        - Src:             'preauth_sam2.c:168,14'
          Dst:             strlen
        - Src:             'preauth_sam2.c:168,14'
          Dst:             sam_challenge_banner
        - Src:             'preauth_sam2.c:168,14'
          Dst:             sam_challenge_banner
        - Src:             'preauth_sam2.c:167,5'
          Dst:             snprintf
        - Src:             'preauth_sam2.c:172,5'
          Dst:             snprintf
        - Src:             'preauth_sam2.c:185,5'
          Dst:             k5_set_prompt_types
        - Src:             'preauth_sam2.c:189,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:190,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:191,9'
          Dst:             k5_set_prompt_types
        - Src:             'preauth_sam2.c:195,5'
          Dst:             k5_set_prompt_types
        - Src:             'preauth_sam2.c:200,14'
          Dst:             krb5_principal2salt
        - Src:             'preauth_sam2.c:201,13'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:202,13'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:224,13'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:225,13'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:232,13'
          Dst:             krb5_free_keyblock_contents
        - Src:             'preauth_sam2.c:237,18'
          Dst:             krb5_c_string_to_key
        - Src:             'preauth_sam2.c:244,13'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:245,13'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:255,14'
          Dst:             krb5_c_is_keyed_cksum
        - Src:             'preauth_sam2.c:258,18'
          Dst:             krb5_c_verify_checksum
        - Src:             'preauth_sam2.c:263,13'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:264,13'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:265,13'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:273,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:274,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:294,14'
          Dst:             encode_krb5_enc_sam_response_enc_2
        - Src:             'preauth_sam2.c:297,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:298,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:312,14'
          Dst:             krb5_c_encrypt_length
        - Src:             'preauth_sam2.c:315,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:316,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:317,9'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:326,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:327,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:328,9'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:332,14'
          Dst:             krb5_c_encrypt
        - Src:             'preauth_sam2.c:336,9'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:337,9'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:338,9'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:339,9'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_sam2.c:342,5'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:346,14'
          Dst:             encode_krb5_sam_response_2
        - Src:             'preauth_sam2.c:347,5'
          Dst:             krb5_free_sam_challenge_2
        - Src:             'preauth_sam2.c:348,5'
          Dst:             krb5_free_sam_challenge_2_body
        - Src:             'preauth_sam2.c:349,5'
          Dst:             krb5_free_data_contents
        - Src:             'preauth_sam2.c:358,9'
          Dst:             krb5_free_data
        - Src:             'preauth_sam2.c:363,9'
          Dst:             krb5_free_data
    - functionName:    clpreauth_sam2_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/preauth_sam2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_principal_compare_any_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_principal_compare_flags
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:166,12'
          Dst:             krb5_principal_compare_flags
    - functionName:    krb5_principal_compare_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          288
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - data_eq
        - krb5_free_principal
        - krb5int_utf8_normcmp
        - realm_compare_flags
        - strncasecmp
        - upn_to_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:94,17'
          Dst:             upn_to_principal
        - Src:             'princ_comp.c:98,17'
          Dst:             upn_to_principal
        - Src:             'princ_comp.c:107,10'
          Dst:             realm_compare_flags
        - Src:             'princ_comp.c:117,23'
          Dst:             krb5int_utf8_normcmp
        - Src:             'princ_comp.c:120,26'
          Dst:             strncasecmp
        - Src:             'princ_comp.c:122,18'
          Dst:             data_eq
        - Src:             'princ_comp.c:132,9'
          Dst:             krb5_free_principal
        - Src:             'princ_comp.c:134,9'
          Dst:             krb5_free_principal
    - functionName:    upn_to_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_parse_name
        - krb5_unparse_name_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:63,12'
          Dst:             krb5_unparse_name_flags
        - Src:             'princ_comp.c:71,12'
          Dst:             krb5_parse_name
    - functionName:    realm_compare_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          98
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - strncasecmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:45,10'
          Dst:             strncasecmp
        - Src:             'princ_comp.c:46,10'
          Dst:             memcmp
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    krb5_principal_compare
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_principal_compare_flags
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:158,12'
          Dst:             krb5_principal_compare_flags
    - functionName:    krb5_is_referral_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_realm_compare
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/princ_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realm_compare_flags
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'princ_comp.c:52,12'
          Dst:             realm_compare_flags
    - functionName:    k5_privsafe_check_addrs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          210
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - krb5_address_compare
        - krb5_address_search
        - krb5_free_addresses
        - krb5_make_fulladdr
        - krb5_os_localaddr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'privsafe.c:325,19'
          Dst:             krb5_make_fulladdr
        - Src:             'privsafe.c:338,19'
          Dst:             krb5_make_fulladdr
        - Src:             'privsafe.c:350,10'
          Dst:             krb5_address_compare
        - Src:             'privsafe.c:362,14'
          Dst:             krb5_address_compare
        - Src:             'privsafe.c:367,15'
          Dst:             krb5_os_localaddr
        - Src:             'privsafe.c:371,14'
          Dst:             krb5_address_search
        - Src:             'privsafe.c:380,5'
          Dst:             krb5_free_addresses
    - functionName:    chk_heimdal_seqnum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          111
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_privsafe_check_seqnum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          210
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - chk_heimdal_seqnum
      functionUses:    1
      BranchProfiles:
        - Branch String:   'privsafe.c:292,9'
          Branch Sides:    []
      Callsites:
        - Src:             'privsafe.c:264,13'
          Dst:             chk_heimdal_seqnum
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_privsafe_check_replay
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          159
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - k5_memrcache_create
        - k5_memrcache_store
        - k5_rc_tag_from_ciphertext
        - krb5_check_clockskew
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'privsafe.c:115,5'
          Dst:             __assert_fail
        - Src:             'privsafe.c:121,15'
          Dst:             krb5_check_clockskew
        - Src:             'privsafe.c:127,15'
          Dst:             k5_rc_tag_from_ciphertext
        - Src:             'privsafe.c:131,15'
          Dst:             make_data
        - Src:             'privsafe.c:135,15'
          Dst:             k5_memrcache_create
        - Src:             'privsafe.c:140,12'
          Dst:             k5_memrcache_store
    - functionName:    k5_privsafe_gen_addrs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_make_fulladdr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'privsafe.c:82,19'
          Dst:             krb5_make_fulladdr
        - Src:             'privsafe.c:94,19'
          Dst:             krb5_make_fulladdr
    - functionName:    k5_privsafe_gen_rdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/privsafe.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          206
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - krb5_us_timeofday
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'privsafe.c:53,15'
          Dst:             krb5_us_timeofday
    - functionName:    krb5int_random_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/random_str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          134
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_c_random_make_octets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'random_str.c:54,15'
          Dst:             krb5_c_random_make_octets
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_cred_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          284
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - empty_data
        - encode_krb5_ticket
        - k5alloc
        - k5calloc
        - krb5_copy_addresses
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_free_tgt_creds
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_cred.c:89,12'
          Dst:             k5calloc
        - Src:             'rd_cred.c:96,19'
          Dst:             k5alloc
        - Src:             'rd_cred.c:107,15'
          Dst:             krb5_copy_principal
        - Src:             'rd_cred.c:111,15'
          Dst:             krb5_copy_principal
        - Src:             'rd_cred.c:115,15'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'rd_cred.c:120,15'
          Dst:             krb5_copy_addresses
        - Src:             'rd_cred.c:124,15'
          Dst:             encode_krb5_ticket
        - Src:             'rd_cred.c:135,34'
          Dst:             empty_data
        - Src:             'rd_cred.c:142,5'
          Dst:             krb5_free_tgt_creds
    - functionName:    decrypt_encpart
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          159
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - alloc_data
        - decode_krb5_enc_cred_part
        - empty_data
        - krb5_k_decrypt
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_cred.c:47,23'
          Dst:             empty_data
        - Src:             'rd_cred.c:53,16'
          Dst:             decode_krb5_enc_cred_part
        - Src:             'rd_cred.c:55,11'
          Dst:             alloc_data
        - Src:             'rd_cred.c:59,15'
          Dst:             krb5_k_decrypt
        - Src:             'rd_cred.c:64,15'
          Dst:             krb5_k_decrypt
        - Src:             'rd_cred.c:69,15'
          Dst:             decode_krb5_enc_cred_part
        - Src:             'rd_cred.c:70,5'
          Dst:             zapfree
    - functionName:    krb5_rd_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          248
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - decode_krb5_cred
        - decrypt_encpart
        - k5_privsafe_check_replay
        - krb5_free_cred
        - krb5_free_cred_enc_part
        - krb5_free_tgt_creds
        - make_cred_list
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_cred.c:167,11'
          Dst:             decode_krb5_cred
        - Src:             'rd_cred.c:171,11'
          Dst:             decrypt_encpart
        - Src:             'rd_cred.c:175,11'
          Dst:             make_cred_list
        - Src:             'rd_cred.c:181,15'
          Dst:             k5_privsafe_check_replay
        - Src:             'rd_cred.c:205,5'
          Dst:             krb5_free_tgt_creds
        - Src:             'rd_cred.c:206,5'
          Dst:             krb5_free_cred
        - Src:             'rd_cred.c:207,5'
          Dst:             krb5_free_cred_enc_part
    - functionName:    krb5_rd_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - decode_krb5_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_error.c:43,12'
          Dst:             decode_krb5_error
    - functionName:    krb5_rd_rep_dce
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_rep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          207
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - decode_krb5_ap_rep
        - decode_krb5_ap_rep_enc_part
        - krb5_free_ap_rep
        - krb5_free_ap_rep_enc_part
        - krb5_k_decrypt
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_rep.c:161,19'
          Dst:             decode_krb5_ap_rep
        - Src:             'rd_rep.c:168,9'
          Dst:             krb5_free_ap_rep
        - Src:             'rd_rep.c:172,19'
          Dst:             krb5_k_decrypt
        - Src:             'rd_rep.c:178,14'
          Dst:             decode_krb5_ap_rep_enc_part
        - Src:             'rd_rep.c:194,5'
          Dst:             krb5int_trace
        - Src:             'rd_rep.c:200,9'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'rd_rep.c:201,5'
          Dst:             krb5_free_ap_rep
    - functionName:    krb5_rd_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_rep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          283
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - decode_krb5_ap_rep
        - decode_krb5_ap_rep_enc_part
        - krb5_auth_con_setrecvsubkey
        - krb5_auth_con_setsendsubkey
        - krb5_free_ap_rep
        - krb5_free_ap_rep_enc_part
        - krb5_k_decrypt
        - krb5int_trace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_rep.c:83,14'
          Dst:             decode_krb5_ap_rep
        - Src:             'rd_rep.c:95,14'
          Dst:             krb5_k_decrypt
        - Src:             'rd_rep.c:102,14'
          Dst:             decode_krb5_ap_rep_enc_part
        - Src:             'rd_rep.c:115,18'
          Dst:             krb5_auth_con_setrecvsubkey
        - Src:             'rd_rep.c:119,18'
          Dst:             krb5_auth_con_setsendsubkey
        - Src:             'rd_rep.c:122,20'
          Dst:             krb5_auth_con_setrecvsubkey
        - Src:             'rd_rep.c:132,5'
          Dst:             krb5int_trace
        - Src:             'rd_rep.c:142,5'
          Dst:             krb5_free_ap_rep
        - Src:             'rd_rep.c:143,5'
          Dst:             krb5_free_ap_rep_enc_part
    - functionName:    unparse_princs
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_free_unparsed_name
        - krb5_unparse_name
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:101,15'
          Dst:             krb5_unparse_name
        - Src:             'rd_req_dec.c:105,11'
          Dst:             krb5_unparse_name
        - Src:             'rd_req_dec.c:107,9'
          Dst:             krb5_free_unparsed_name
    - functionName:    integrity_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - dgettext
        - krb5_free_unparsed_name
        - krb5_principal_compare
        - krb5_set_error_message
        - unparse_princs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:168,5'
          Dst:             __assert_fail
        - Src:             'rd_req_dec.c:169,11'
          Dst:             unparse_princs
        - Src:             'rd_req_dec.c:173,11'
          Dst:             krb5_principal_compare
        - Src:             'rd_req_dec.c:176,15'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:175,5'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:178,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'rd_req_dec.c:179,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    keytab_fetch_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          155
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - dgettext
        - k5_change_error_message_code
        - krb5_free_unparsed_name
        - krb5_principal_compare
        - krb5_set_error_message
        - unparse_princs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:127,9'
          Dst:             k5_change_error_message_code
        - Src:             'rd_req_dec.c:133,9'
          Dst:             k5_change_error_message_code
        - Src:             'rd_req_dec.c:140,5'
          Dst:             __assert_fail
        - Src:             'rd_req_dec.c:141,11'
          Dst:             unparse_princs
        - Src:             'rd_req_dec.c:144,9'
          Dst:             krb5_principal_compare
        - Src:             'rd_req_dec.c:146,33'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:146,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:151,19'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:150,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:154,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'rd_req_dec.c:155,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    iteration_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          209
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - dgettext
        - krb5_enctype_to_name
        - krb5_free_unparsed_name
        - krb5_set_error_message
        - snprintf
        - unparse_princs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:218,11'
          Dst:             unparse_princs
        - Src:             'rd_req_dec.c:221,9'
          Dst:             krb5_enctype_to_name
        - Src:             'rd_req_dec.c:222,15'
          Dst:             snprintf
        - Src:             'rd_req_dec.c:227,37'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:227,13'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:230,23'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:229,13'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:234,9'
          Dst:             __assert_fail
        - Src:             'rd_req_dec.c:237,19'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:236,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:242,19'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:241,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:248,23'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:247,13'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:253,23'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:252,13'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:262,19'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:261,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:267,19'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:266,9'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:272,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'rd_req_dec.c:273,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    try_one_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          103
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_copy_keyblock_contents
        - krb5_copy_principal
        - krb5_decrypt_tkt_part
        - krb5_free_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:297,11'
          Dst:             krb5_decrypt_tkt_part
        - Src:             'rd_req_dec.c:302,11'
          Dst:             krb5_copy_principal
        - Src:             'rd_req_dec.c:308,15'
          Dst:             krb5_copy_keyblock_contents
        - Src:             'rd_req_dec.c:310,13'
          Dst:             krb5_free_principal
        - Src:             'rd_req_dec.c:316,5'
          Dst:             krb5_free_principal
    - functionName:    nomatch_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - dgettext
        - krb5_free_unparsed_name
        - krb5_set_error_message
        - unparse_princs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:192,5'
          Dst:             __assert_fail
        - Src:             'rd_req_dec.c:193,11'
          Dst:             unparse_princs
        - Src:             'rd_req_dec.c:198,15'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:197,5'
          Dst:             krb5_set_error_message
        - Src:             'rd_req_dec.c:200,5'
          Dst:             krb5_free_unparsed_name
        - Src:             'rd_req_dec.c:201,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    try_one_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          136
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - integrity_error
        - keytab_fetch_error
        - krb5_free_keytab_entry_contents
        - krb5_kt_get_entry
        - krb5int_trace
        - try_one_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:335,11'
          Dst:             krb5_kt_get_entry
        - Src:             'rd_req_dec.c:337,16'
          Dst:             keytab_fetch_error
        - Src:             'rd_req_dec.c:340,11'
          Dst:             try_one_entry
        - Src:             'rd_req_dec.c:342,9'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:343,11'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'rd_req_dec.c:345,16'
          Dst:             integrity_error
    - functionName:    is_matching
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_try_server
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          322
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - is_matching
        - iteration_error
        - k5_change_error_message_code
        - krb5_c_enctype_compare
        - krb5_free_keytab_entry_contents
        - krb5_kt_end_seq_get
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
        - krb5_principal_compare
        - krb5_sname_match
        - krb5int_trace
        - nomatch_error
        - try_one_entry
        - try_one_princ
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:374,10'
          Dst:             is_matching
        - Src:             'rd_req_dec.c:375,16'
          Dst:             try_one_princ
        - Src:             'rd_req_dec.c:382,14'
          Dst:             krb5_sname_match
        - Src:             'rd_req_dec.c:383,20'
          Dst:             nomatch_error
        - Src:             'rd_req_dec.c:384,16'
          Dst:             try_one_princ
        - Src:             'rd_req_dec.c:390,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'rd_req_dec.c:392,9'
          Dst:             k5_change_error_message_code
        - Src:             'rd_req_dec.c:395,19'
          Dst:             krb5_kt_next_entry
        - Src:             'rd_req_dec.c:397,14'
          Dst:             krb5_sname_match
        - Src:             'rd_req_dec.c:398,17'
          Dst:             krb5_principal_compare
        - Src:             'rd_req_dec.c:400,19'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'rd_req_dec.c:405,13'
          Dst:             krb5_c_enctype_compare
        - Src:             'rd_req_dec.c:409,13'
          Dst:             krb5_principal_compare
        - Src:             'rd_req_dec.c:424,17'
          Dst:             try_one_entry
        - Src:             'rd_req_dec.c:425,17'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:426,23'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'rd_req_dec.c:431,15'
          Dst:             krb5_free_keytab_entry_contents
        - Src:             'rd_req_dec.c:434,11'
          Dst:             krb5_kt_end_seq_get
        - Src:             'rd_req_dec.c:438,12'
          Dst:             iteration_error
    - functionName:    negotiate_etype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          175
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - dgettext
        - krb5_enctype_to_name
        - krb5_set_error_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:881,17'
          Dst:             krb5_enctype_to_name
        - Src:             'rd_req_dec.c:884,27'
          Dst:             dgettext
        - Src:             'rd_req_dec.c:883,17'
          Dst:             krb5_set_error_message
    - functionName:    decode_etype_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 911
      functionLinenumberEnd: 976
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          237
      EdgeCount:       46
      CyclomaticComplexity: 11
      functionsReached:
        - decode_krb5_etype_list
        - krb5_decode_authdata_container
        - krb5_free_authdata
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rd_req_dec.c:929,9'
          Branch Sides:    []
      Callsites:
        - Src:             'rd_req_dec.c:931,20'
          Dst:             krb5_decode_authdata_container
        - Src:             'rd_req_dec.c:945,17'
          Dst:             krb5_free_authdata
        - Src:             'rd_req_dec.c:965,12'
          Dst:             decode_krb5_etype_list
        - Src:             'rd_req_dec.c:973,9'
          Dst:             krb5_free_authdata
    - functionName:    decrypt_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          104
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - decode_krb5_authenticator
        - krb5_c_decrypt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:834,19'
          Dst:             krb5_c_decrypt
        - Src:             'rd_req_dec.c:846,20'
          Dst:             decode_krb5_authenticator
    - functionName:    decrypt_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - decrypt_try_server
        - free_canonprinc
        - k5_canonprinc
        - k5_sname_wildcard_host
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:455,9'
          Dst:             k5_sname_wildcard_host
        - Src:             'rd_req_dec.c:456,16'
          Dst:             decrypt_try_server
        - Src:             'rd_req_dec.c:460,19'
          Dst:             k5_canonprinc
        - Src:             'rd_req_dec.c:462,16'
          Dst:             decrypt_try_server
        - Src:             'rd_req_dec.c:468,5'
          Dst:             free_canonprinc
    - functionName:    krb5_rd_req_decoded_anyflag
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rd_req_decoded_opt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:811,14'
          Dst:             rd_req_decoded_opt
    - functionName:    rd_req_decoded_opt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         145
      ICount:          1027
      EdgeCount:       197
      CyclomaticComplexity: 54
      functionsReached:
        - __assert_fail
        - calloc
        - decode_etype_list
        - decrypt_authenticator
        - decrypt_ticket
        - k5_count_etypes
        - k5_rc_default
        - k5_rc_store
        - krb5_address_search
        - krb5_authdata_context_init
        - krb5_check_clockskew
        - krb5_check_transited_list
        - krb5_copy_ticket
        - krb5_decrypt_tkt_part
        - krb5_free_keyblock_contents
        - krb5_get_permitted_enctypes
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_key_enctype
        - krb5_principal_compare
        - krb5int_authdata_verify
        - krb5int_trace
        - krb5int_validate_times
        - negotiate_etype
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:495,23'
          Dst:             krb5_decrypt_tkt_part
        - Src:             'rd_req_dec.c:503,9'
          Dst:             krb5_k_free_key
        - Src:             'rd_req_dec.c:508,18'
          Dst:             decrypt_ticket
        - Src:             'rd_req_dec.c:511,13'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:518,5'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:525,19'
          Dst:             decrypt_authenticator
        - Src:             'rd_req_dec.c:530,10'
          Dst:             krb5_principal_compare
        - Src:             'rd_req_dec.c:537,10'
          Dst:             krb5_address_search
        - Src:             'rd_req_dec.c:546,18'
          Dst:             k5_rc_default
        - Src:             'rd_req_dec.c:608,22'
          Dst:             krb5_check_transited_list
        - Src:             'rd_req_dec.c:621,18'
          Dst:             k5_rc_store
        - Src:             'rd_req_dec.c:627,14'
          Dst:             krb5int_validate_times
        - Src:             'rd_req_dec.c:631,19'
          Dst:             krb5_check_clockskew
        - Src:             'rd_req_dec.c:640,23'
          Dst:             krb5_authdata_context_init
        - Src:             'rd_req_dec.c:643,23'
          Dst:             krb5int_authdata_verify
        - Src:             'rd_req_dec.c:653,14'
          Dst:             decode_etype_list
        - Src:             'rd_req_dec.c:661,42'
          Dst:             calloc
        - Src:             'rd_req_dec.c:663,42'
          Dst:             realloc
        - Src:             'rd_req_dec.c:707,22'
          Dst:             krb5_get_permitted_enctypes
        - Src:             'rd_req_dec.c:711,32'
          Dst:             k5_count_etypes
        - Src:             'rd_req_dec.c:718,14'
          Dst:             negotiate_etype
        - Src:             'rd_req_dec.c:725,5'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:727,5'
          Dst:             __assert_fail
        - Src:             'rd_req_dec.c:731,9'
          Dst:             krb5int_trace
        - Src:             'rd_req_dec.c:732,23'
          Dst:             krb5_k_create_key
        - Src:             'rd_req_dec.c:736,18'
          Dst:             krb5_k_create_key
        - Src:             'rd_req_dec.c:739,13'
          Dst:             krb5_k_free_key
        - Src:             'rd_req_dec.c:748,19'
          Dst:             krb5_k_create_key
        - Src:             'rd_req_dec.c:764,23'
          Dst:             krb5_copy_ticket
        - Src:             'rd_req_dec.c:771,13'
          Dst:             krb5_k_key_enctype
        - Src:             'rd_req_dec.c:784,9'
          Dst:             krb5_free_keyblock_contents
    - functionName:    krb5_rd_req_decoded
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req_dec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rd_req_decoded_opt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_req_dec.c:796,14'
          Dst:             rd_req_decoded_opt
    - functionName:    k5_response_items_get_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_question
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:219,9'
          Dst:             find_question
    - functionName:    find_question
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:100,13'
          Dst:             strcmp
    - functionName:    k5_response_items_set_answer
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          73
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - find_question
        - strdup
        - zapfreestr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:198,9'
          Dst:             find_question
        - Src:             'response_items.c:203,15'
          Dst:             strdup
        - Src:             'response_items.c:208,5'
          Dst:             zapfreestr
    - functionName:    zapfreestr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:677,9'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:677,9'
          Dst:             explicit_bzero
    - functionName:    k5_response_items_get_challenge
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_question
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:184,9'
          Dst:             find_question
    - functionName:    push_question
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          225
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - realloc
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:118,11'
          Dst:             realloc
        - Src:             'response_items.c:125,11'
          Dst:             realloc
        - Src:             'response_items.c:132,11'
          Dst:             realloc
        - Src:             'response_items.c:139,32'
          Dst:             strdup
        - Src:             'response_items.c:144,37'
          Dst:             strdup
    - functionName:    k5_response_items_ask_question
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - find_question
        - push_question
        - strdup
        - zapfreestr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:163,9'
          Dst:             find_question
        - Src:             'response_items.c:165,16'
          Dst:             push_question
        - Src:             'response_items.c:168,15'
          Dst:             strdup
        - Src:             'response_items.c:173,5'
          Dst:             zapfreestr
    - functionName:    k5_response_items_list_questions
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_response_items_empty
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_response_items_reset
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - zapfreestr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:65,9'
          Dst:             zapfreestr
        - Src:             'response_items.c:70,9'
          Dst:             zapfreestr
    - functionName:    k5_response_items_free
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_response_items_reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:47,5'
          Dst:             k5_response_items_reset
    - functionName:    k5_response_items_new
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/response_items.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'response_items.c:40,15'
          Dst:             calloc
    - functionName:    check_referral_path
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_principal_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:846,13'
          Dst:             krb5_principal_compare
    - functionName:    chase_referrals
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          227
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - check_referral_path
        - data_eq
        - data_eq_string
        - krb5_free_creds
        - krb5_get_cred_via_tkt
        - krb5_principal_compare_any_realm
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:878,16'
          Dst:             krb5_get_cred_via_tkt
        - Src:             's4u_creds.c:883,13'
          Dst:             krb5_principal_compare_any_realm
        - Src:             's4u_creds.c:891,14'
          Dst:             data_eq_string
        - Src:             's4u_creds.c:896,13'
          Dst:             data_eq
        - Src:             's4u_creds.c:901,16'
          Dst:             check_referral_path
        - Src:             's4u_creds.c:917,9'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:918,5'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:919,5'
          Dst:             krb5_free_creds
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    get_target_realm_proxy_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 982
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          120
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - chase_referrals
        - data_eq
        - krb5_free_creds
        - krb5_free_principal
        - krb5int_tgtname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:960,9'
          Dst:             data_eq
        - Src:             's4u_creds.c:963,12'
          Dst:             krb5int_tgtname
        - Src:             's4u_creds.c:973,12'
          Dst:             chase_referrals
        - Src:             's4u_creds.c:974,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:978,5'
          Dst:             krb5_free_creds
    - functionName:    get_tgt_to_target_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chase_referrals
        - empty_data
        - krb5_free_creds
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:937,28'
          Dst:             empty_data
        - Src:             's4u_creds.c:940,12'
          Dst:             chase_referrals
        - Src:             's4u_creds.c:941,5'
          Dst:             krb5_free_creds
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_rbcd_support
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - decode_krb5_pa_pac_options
        - krb5int_find_pa_data
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:748,10'
          Dst:             krb5int_find_pa_data
        - Src:             's4u_creds.c:752,23'
          Dst:             make_data
        - Src:             's4u_creds.c:753,12'
          Dst:             decode_krb5_pa_pac_options
    - functionName:    add_rbcd_padata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_krb5_pa_pac_options
        - k5_add_pa_data_from_data
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:774,12'
          Dst:             encode_krb5_pa_pac_options
        - Src:             's4u_creds.c:778,12'
          Dst:             k5_add_pa_data_from_data
        - Src:             's4u_creds.c:780,5'
          Dst:             krb5_free_data
    - functionName:    normalize_server_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_copy_principal
        - krb5_free_data_contents
        - krb5_free_principal
        - krb5_is_referral_realm
        - krb5int_copy_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:821,12'
          Dst:             krb5_copy_principal
        - Src:             's4u_creds.c:825,9'
          Dst:             krb5_is_referral_realm
        - Src:             's4u_creds.c:826,9'
          Dst:             krb5_free_data_contents
        - Src:             's4u_creds.c:827,16'
          Dst:             krb5int_copy_data_contents
        - Src:             's4u_creds.c:829,13'
          Dst:             krb5_free_principal
    - functionName:    get_client_tgt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_principal
        - krb5_get_credentials
        - krb5int_tgtname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:795,12'
          Dst:             krb5int_tgtname
        - Src:             's4u_creds.c:802,12'
          Dst:             krb5_get_credentials
        - Src:             's4u_creds.c:803,5'
          Dst:             krb5_free_principal
    - functionName:    make_pa_for_user_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          297
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_c_make_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:131,12'
          Dst:             krb5_c_make_checksum
    - functionName:    verify_s4u2self_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          389
      EdgeCount:       77
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - decode_krb5_pa_s4u_x509_user
        - encode_krb5_s4u_userid
        - krb5_c_is_keyed_cksum
        - krb5_c_verify_checksum
        - krb5_copy_principal
        - krb5_free_data
        - krb5_free_pa_s4u_x509_user
        - krb5_free_principal
        - krb5_principal_compare
        - krb5int_find_pa_data
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   's4u_creds.c:290,5'
          Branch Sides:    []
      Callsites:
        - Src:             's4u_creds.c:288,5'
          Dst:             __assert_fail
        - Src:             's4u_creds.c:302,22'
          Dst:             krb5int_find_pa_data
        - Src:             's4u_creds.c:306,22'
          Dst:             krb5int_find_pa_data
        - Src:             's4u_creds.c:315,12'
          Dst:             decode_krb5_pa_s4u_x509_user
        - Src:             's4u_creds.c:324,12'
          Dst:             encode_krb5_s4u_userid
        - Src:             's4u_creds.c:333,12'
          Dst:             krb5_c_verify_checksum
        - Src:             's4u_creds.c:349,9'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:350,16'
          Dst:             krb5_copy_principal
        - Src:             's4u_creds.c:354,17'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:377,17'
          Dst:             memcmp
        - Src:             's4u_creds.c:380,17'
          Dst:             memcmp
        - Src:             's4u_creds.c:387,17'
          Dst:             krb5_c_is_keyed_cksum
        - Src:             's4u_creds.c:393,5'
          Dst:             krb5_free_pa_s4u_x509_user
        - Src:             's4u_creds.c:394,5'
          Dst:             krb5_free_data
    - functionName:    build_pa_s4u_x509_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          263
      EdgeCount:       49
      CyclomaticComplexity: 12
      functionsReached:
        - __assert_fail
        - encode_krb5_pa_s4u_x509_user
        - encode_krb5_s4u_userid
        - krb5_c_make_checksum
        - krb5_free_checksum_contents
        - krb5_free_data
        - krb5int_c_mandatory_cksumtype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:210,5'
          Dst:             __assert_fail
        - Src:             's4u_creds.c:214,12'
          Dst:             encode_krb5_s4u_userid
        - Src:             's4u_creds.c:223,16'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             's4u_creds.c:229,12'
          Dst:             krb5_c_make_checksum
        - Src:             's4u_creds.c:235,5'
          Dst:             krb5_free_data
        - Src:             's4u_creds.c:238,12'
          Dst:             encode_krb5_pa_s4u_x509_user
        - Src:             's4u_creds.c:244,5'
          Dst:             __assert_fail
        - Src:             's4u_creds.c:249,5'
          Dst:             __assert_fail
        - Src:             's4u_creds.c:258,9'
          Dst:             krb5_free_checksum_contents
        - Src:             's4u_creds.c:261,5'
          Dst:             krb5_free_data
    - functionName:    build_pa_for_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          135
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - encode_krb5_pa_for_user
        - krb5_free_checksum_contents
        - krb5_free_data
        - make_pa_for_user_checksum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:160,12'
          Dst:             make_pa_for_user_checksum
        - Src:             's4u_creds.c:165,12'
          Dst:             encode_krb5_pa_for_user
        - Src:             's4u_creds.c:187,9'
          Dst:             krb5_free_checksum_contents
        - Src:             's4u_creds.c:188,5'
          Dst:             krb5_free_data
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    convert_to_enterprise
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_unparsed_name
        - krb5_parse_name_flags
        - krb5_unparse_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:408,12'
          Dst:             krb5_unparse_name
        - Src:             's4u_creds.c:411,12'
          Dst:             krb5_parse_name_flags
        - Src:             's4u_creds.c:415,5'
          Dst:             krb5_free_unparsed_name
    - functionName:    krb5_get_credentials_for_proxy
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1262
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          183
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - encode_krb5_ticket
        - k5_get_proxy_cred_from_kdc
        - krb5_free_creds
        - krb5_free_data
        - krb5_principal_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:1224,10'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:1230,12'
          Dst:             encode_krb5_ticket
        - Src:             's4u_creds.c:1238,12'
          Dst:             k5_get_proxy_cred_from_kdc
        - Src:             's4u_creds.c:1248,10'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:1256,9'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:1260,9'
          Dst:             krb5_free_data
    - functionName:    k5_get_proxy_cred_from_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          212
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - free_canonprinc
        - get_proxy_cred_from_kdc
        - k5_canonprinc
        - k5_get_cached_cred
        - krb5_cc_store_cred
        - krb5_copy_principal
        - krb5_free_creds
        - krb5_free_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:1159,12'
          Dst:             k5_get_cached_cred
        - Src:             's4u_creds.c:1165,20'
          Dst:             k5_canonprinc
        - Src:             's4u_creds.c:1168,16'
          Dst:             get_proxy_cred_from_kdc
        - Src:             's4u_creds.c:1175,5'
          Dst:             free_canonprinc
        - Src:             's4u_creds.c:1179,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:1181,12'
          Dst:             krb5_copy_principal
        - Src:             's4u_creds.c:1183,9'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:1188,15'
          Dst:             krb5_cc_store_cred
    - functionName:    get_proxy_cred_from_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          475
      EdgeCount:       81
      CyclomaticComplexity: 25
      functionsReached:
        - add_rbcd_padata
        - check_rbcd_support
        - data_eq_string
        - dgettext
        - empty_data
        - get_client_tgt
        - get_target_realm_proxy_tgt
        - get_tgt_to_target_realm
        - krb5_copy_authdata
        - krb5_free_creds
        - krb5_free_data_contents
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5_get_cred_via_tkt_ext
        - krb5_principal_compare
        - krb5_principal_compare_any_realm
        - krb5_realm_compare
        - krb5_set_error_message
        - krb5int_copy_data_contents
        - normalize_server_princ
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:1004,12'
          Dst:             get_client_tgt
        - Src:             's4u_creds.c:1008,12'
          Dst:             normalize_server_princ
        - Src:             's4u_creds.c:1013,12'
          Dst:             add_rbcd_padata
        - Src:             's4u_creds.c:1029,12'
          Dst:             krb5_get_cred_via_tkt_ext
        - Src:             's4u_creds.c:1042,10'
          Dst:             krb5_realm_compare
        - Src:             's4u_creds.c:1043,34'
          Dst:             dgettext
        - Src:             's4u_creds.c:1043,9'
          Dst:             krb5_set_error_message
        - Src:             's4u_creds.c:1050,10'
          Dst:             krb5_principal_compare_any_realm
        - Src:             's4u_creds.c:1052,14'
          Dst:             data_eq_string
        - Src:             's4u_creds.c:1066,16'
          Dst:             check_rbcd_support
        - Src:             's4u_creds.c:1070,9'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:1078,16'
          Dst:             get_tgt_to_target_realm
        - Src:             's4u_creds.c:1087,16'
          Dst:             get_target_realm_proxy_tgt
        - Src:             's4u_creds.c:1092,9'
          Dst:             krb5_free_data_contents
        - Src:             's4u_creds.c:1093,16'
          Dst:             krb5int_copy_data_contents
        - Src:             's4u_creds.c:1101,23'
          Dst:             empty_data
        - Src:             's4u_creds.c:1102,9'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:1106,16'
          Dst:             krb5_get_cred_via_tkt_ext
        - Src:             's4u_creds.c:1113,16'
          Dst:             check_rbcd_support
        - Src:             's4u_creds.c:1117,14'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:1123,9'
          Dst:             krb5_free_data_contents
        - Src:             's4u_creds.c:1124,16'
          Dst:             krb5int_copy_data_contents
        - Src:             's4u_creds.c:1131,12'
          Dst:             krb5_copy_authdata
        - Src:             's4u_creds.c:1139,5'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:1140,5'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:1141,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:1142,5'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:1143,5'
          Dst:             krb5_free_pa_data
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/./../os/os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_self_cred_from_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         90
      ICount:          763
      EdgeCount:       122
      CyclomaticComplexity: 34
      functionsReached:
        - build_pa_for_user
        - build_pa_s4u_x509_user
        - convert_to_enterprise
        - data_eq
        - data_eq_string
        - empty_data
        - k5alloc
        - k5calloc
        - krb5_build_principal_ext
        - krb5_copy_principal
        - krb5_free_checksum_contents
        - krb5_free_creds
        - krb5_free_keyblock
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5_get_cred_via_tkt_ext
        - krb5_get_credentials
        - krb5_principal_compare
        - krb5_principal_compare_any_realm
        - krb5int_tgtname
        - verify_s4u2self_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:445,20'
          Dst:             krb5_build_principal_ext
        - Src:             's4u_creds.c:456,20'
          Dst:             krb5_copy_principal
        - Src:             's4u_creds.c:463,16'
          Dst:             krb5_build_principal_ext
        - Src:             's4u_creds.c:474,12'
          Dst:             krb5int_tgtname
        - Src:             's4u_creds.c:482,12'
          Dst:             krb5_get_credentials
        - Src:             's4u_creds.c:490,12'
          Dst:             convert_to_enterprise
        - Src:             's4u_creds.c:517,21'
          Dst:             k5calloc
        - Src:             's4u_creds.c:521,24'
          Dst:             k5alloc
        - Src:             's4u_creds.c:523,13'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:533,20'
          Dst:             build_pa_for_user
        - Src:             's4u_creds.c:543,17'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:548,13'
          Dst:             data_eq
        - Src:             's4u_creds.c:559,16'
          Dst:             krb5_get_cred_via_tkt_ext
        - Src:             's4u_creds.c:559,16'
          Dst:             build_pa_s4u_x509_user
        - Src:             's4u_creds.c:569,13'
          Dst:             krb5_free_checksum_contents
        - Src:             's4u_creds.c:570,13'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:576,16'
          Dst:             verify_s4u2self_reply
        - Src:             's4u_creds.c:579,9'
          Dst:             krb5_free_checksum_contents
        - Src:             's4u_creds.c:580,9'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:581,9'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:582,9'
          Dst:             krb5_free_pa_data
        - Src:             's4u_creds.c:583,9'
          Dst:             krb5_free_keyblock
        - Src:             's4u_creds.c:593,41'
          Dst:             empty_data
        - Src:             's4u_creds.c:595,13'
          Dst:             krb5_principal_compare_any_realm
        - Src:             's4u_creds.c:599,18'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:603,20'
          Dst:             data_eq_string
        - Src:             's4u_creds.c:607,17'
          Dst:             data_eq
        - Src:             's4u_creds.c:608,17'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:614,21'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:626,13'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:636,13'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:638,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:639,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:640,5'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:641,5'
          Dst:             krb5_free_principal
        - Src:             's4u_creds.c:642,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    s4u_identify_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          152
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - empty_data
        - k5_identify_realm
        - krb5_anonymous_principal
        - krb5_copy_principal
        - krb5_principal_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:46,28'
          Dst:             empty_data
        - Src:             's4u_creds.c:59,44'
          Dst:             krb5_anonymous_principal
        - Src:             's4u_creds.c:58,21'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:61,16'
          Dst:             krb5_copy_principal
        - Src:             's4u_creds.c:72,16'
          Dst:             k5_identify_realm
        - Src:             's4u_creds.c:87,12'
          Dst:             k5_identify_realm
    - functionName:    krb5_get_credentials_for_user
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/s4u_creds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          361
      EdgeCount:       84
      CyclomaticComplexity: 24
      functionsReached:
        - __assert_fail
        - krb5_cc_store_cred
        - krb5_copy_authdata
        - krb5_free_creds
        - krb5_free_principal
        - krb5_get_credentials
        - krb5_get_self_cred_from_kdc
        - krb5_principal_compare
        - s4u_identify_user
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             's4u_creds.c:665,16'
          Dst:             krb5_get_credentials
        - Src:             's4u_creds.c:676,12'
          Dst:             s4u_identify_user
        - Src:             's4u_creds.c:685,16'
          Dst:             krb5_get_credentials
        - Src:             's4u_creds.c:691,12'
          Dst:             krb5_get_self_cred_from_kdc
        - Src:             's4u_creds.c:696,5'
          Dst:             __assert_fail
        - Src:             's4u_creds.c:701,10'
          Dst:             krb5_principal_compare
        - Src:             's4u_creds.c:706,16'
          Dst:             krb5_get_credentials
        - Src:             's4u_creds.c:709,13'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:718,12'
          Dst:             krb5_copy_authdata
        - Src:             's4u_creds.c:724,16'
          Dst:             krb5_cc_store_cred
        - Src:             's4u_creds.c:731,9'
          Dst:             krb5_free_creds
        - Src:             's4u_creds.c:735,5'
          Dst:             krb5_free_principal
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    tgs_construct_ap_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/send_tgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - decode_krb5_ticket
        - encode_krb5_ap_req
        - encode_krb5_authenticator
        - krb5_c_make_checksum
        - krb5_encrypt_helper
        - krb5_free_data_contents
        - krb5_free_ticket
        - krb5_us_timeofday
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'send_tgs.c:70,11'
          Dst:             krb5_c_make_checksum
        - Src:             'send_tgs.c:82,11'
          Dst:             krb5_us_timeofday
        - Src:             'send_tgs.c:85,11'
          Dst:             encode_krb5_authenticator
        - Src:             'send_tgs.c:88,11'
          Dst:             krb5_encrypt_helper
        - Src:             'send_tgs.c:94,11'
          Dst:             decode_krb5_ticket
        - Src:             'send_tgs.c:101,11'
          Dst:             encode_krb5_ap_req
        - Src:             'send_tgs.c:105,5'
          Dst:             krb5_free_ticket
        - Src:             'send_tgs.c:106,5'
          Dst:             krb5_free_data_contents
        - Src:             'send_tgs.c:108,9'
          Dst:             zapfree
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_make_tgs_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/send_tgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         90
      ICount:          710
      EdgeCount:       123
      CyclomaticComplexity: 35
      functionsReached:
        - decode_krb5_ticket
        - empty_data
        - encode_krb5_authdata
        - encode_krb5_tgs_req
        - k5_generate_nonce
        - k5alloc
        - k5calloc
        - k5memdup
        - krb5_c_valid_enctype
        - krb5_encrypt_helper
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_free_keyblock
        - krb5_free_pa_data
        - krb5_free_ticket
        - krb5_generate_subkey
        - krb5_get_tgs_ktypes
        - krb5_principal_compare
        - krb5_timeofday
        - krb5int_fast_prep_req
        - krb5int_fast_prep_req_body
        - krb5int_fast_tgs_armor
        - krb5int_trace
        - tgs_construct_ap_req
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'send_tgs.c:140,21'
          Dst:             empty_data
        - Src:             'send_tgs.c:148,10'
          Dst:             krb5_principal_compare
        - Src:             'send_tgs.c:161,11'
          Dst:             k5_generate_nonce
        - Src:             'send_tgs.c:165,11'
          Dst:             krb5_timeofday
        - Src:             'send_tgs.c:173,11'
          Dst:             krb5_generate_subkey
        - Src:             'send_tgs.c:176,5'
          Dst:             krb5int_trace
        - Src:             'send_tgs.c:178,11'
          Dst:             krb5int_fast_tgs_armor
        - Src:             'send_tgs.c:184,15'
          Dst:             encode_krb5_authdata
        - Src:             'send_tgs.c:187,15'
          Dst:             krb5_encrypt_helper
        - Src:             'send_tgs.c:196,14'
          Dst:             krb5_c_valid_enctype
        - Src:             'send_tgs.c:206,15'
          Dst:             krb5_get_tgs_ktypes
        - Src:             'send_tgs.c:213,5'
          Dst:             krb5int_trace
        - Src:             'send_tgs.c:220,15'
          Dst:             decode_krb5_ticket
        - Src:             'send_tgs.c:229,11'
          Dst:             krb5int_fast_prep_req_body
        - Src:             'send_tgs.c:234,11'
          Dst:             tgs_construct_ap_req
        - Src:             'send_tgs.c:242,14'
          Dst:             k5calloc
        - Src:             'send_tgs.c:245,17'
          Dst:             k5alloc
        - Src:             'send_tgs.c:249,27'
          Dst:             k5memdup
        - Src:             'send_tgs.c:257,14'
          Dst:             k5alloc
        - Src:             'send_tgs.c:262,24'
          Dst:             k5memdup
        - Src:             'send_tgs.c:279,11'
          Dst:             krb5int_fast_prep_req
        - Src:             'send_tgs.c:279,11'
          Dst:             encode_krb5_tgs_req
        - Src:             'send_tgs.c:291,5'
          Dst:             krb5_free_data
        - Src:             'send_tgs.c:292,5'
          Dst:             krb5_free_data
        - Src:             'send_tgs.c:293,5'
          Dst:             krb5_free_data
        - Src:             'send_tgs.c:294,5'
          Dst:             krb5_free_pa_data
        - Src:             'send_tgs.c:295,5'
          Dst:             krb5_free_ticket
        - Src:             'send_tgs.c:296,5'
          Dst:             krb5_free_data_contents
        - Src:             'send_tgs.c:297,5'
          Dst:             krb5_free_keyblock
    - functionName:    k5_generate_nonce
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/send_tgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_c_random_make_octets
        - load_32_n
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'send_tgs.c:37,29'
          Dst:             make_data
        - Src:             'send_tgs.c:43,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'send_tgs.c:46,25'
          Dst:             load_32_n
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    intern_key
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_actx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_internalize_keyblock
        - krb5_free_keyblock
        - krb5_k_create_key
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_actx.c:242,11'
          Dst:             k5_internalize_keyblock
        - Src:             'ser_actx.c:245,11'
          Dst:             krb5_k_create_key
        - Src:             'ser_actx.c:246,5'
          Dst:             krb5_free_keyblock
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    k5_internalize_auth_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_actx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         94
      ICount:          469
      EdgeCount:       127
      CyclomaticComplexity: 35
      functionsReached:
        - alloc_data
        - calloc
        - intern_key
        - k5_internalize_address
        - k5_internalize_authenticator
        - k5_ser_unpack_len
        - krb5_auth_con_free
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_actx.c:265,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:273,14'
          Dst:             calloc
        - Src:             'ser_actx.c:276,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:280,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:284,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:288,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:292,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:296,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_actx.c:299,24'
          Dst:             alloc_data
        - Src:             'ser_actx.c:301,28'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_actx.c:312,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:316,30'
          Dst:             k5_internalize_address
        - Src:             'ser_actx.c:318,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:323,30'
          Dst:             k5_internalize_address
        - Src:             'ser_actx.c:325,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:330,30'
          Dst:             k5_internalize_address
        - Src:             'ser_actx.c:332,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:337,30'
          Dst:             k5_internalize_address
        - Src:             'ser_actx.c:339,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:344,30'
          Dst:             intern_key
        - Src:             'ser_actx.c:345,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:350,30'
          Dst:             intern_key
        - Src:             'ser_actx.c:352,28'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:358,28'
          Dst:             intern_key
        - Src:             'ser_actx.c:373,24'
          Dst:             k5_internalize_authenticator
        - Src:             'ser_actx.c:381,24'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_actx.c:392,17'
          Dst:             krb5_auth_con_free
    - functionName:    k5_externalize_auth_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_actx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          332
      EdgeCount:       74
      CyclomaticComplexity: 22
      functionsReached:
        - k5_externalize_address
        - k5_externalize_authenticator
        - k5_externalize_keyblock
        - k5_size_auth_context
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_actx.c:139,14'
          Dst:             k5_size_auth_context
        - Src:             'ser_actx.c:143,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:144,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:146,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:148,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:150,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:152,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:156,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:158,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_actx.c:166,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:167,24'
          Dst:             k5_externalize_address
        - Src:             'ser_actx.c:173,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:174,24'
          Dst:             k5_externalize_address
        - Src:             'ser_actx.c:180,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:181,24'
          Dst:             k5_externalize_address
        - Src:             'ser_actx.c:187,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:188,24'
          Dst:             k5_externalize_address
        - Src:             'ser_actx.c:194,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:195,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_actx.c:201,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:202,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_actx.c:209,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_actx.c:210,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_actx.c:217,24'
          Dst:             k5_externalize_authenticator
        - Src:             'ser_actx.c:226,24'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_auth_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_actx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         70
      ICount:          349
      EdgeCount:       95
      CyclomaticComplexity: 27
      functionsReached:
        - k5_size_address
        - k5_size_authenticator
        - k5_size_keyblock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_actx.c:65,20'
          Dst:             k5_size_address
        - Src:             'ser_actx.c:72,20'
          Dst:             k5_size_address
        - Src:             'ser_actx.c:79,20'
          Dst:             k5_size_address
        - Src:             'ser_actx.c:86,20'
          Dst:             k5_size_address
        - Src:             'ser_actx.c:93,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_actx.c:100,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_actx.c:108,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_actx.c:116,20'
          Dst:             k5_size_authenticator
    - functionName:    k5_internalize_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_adata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          179
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - calloc
        - k5_ser_unpack_len
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_adata.c:111,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_adata.c:118,43'
          Dst:             calloc
        - Src:             'ser_adata.c:121,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_adata.c:125,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_adata.c:131,26'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_adata.c:133,29'
          Dst:             krb5_ser_unpack_int32
    - functionName:    k5_externalize_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_adata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_size_authdata
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_adata.c:70,14'
          Dst:             k5_size_authdata
        - Src:             'ser_adata.c:72,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_adata.c:75,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_adata.c:79,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_adata.c:83,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_adata.c:88,20'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_adata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_internalize_address
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          191
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - calloc
        - k5_ser_unpack_len
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_addr.c:112,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_addr.c:119,41'
          Dst:             calloc
        - Src:             'ser_addr.c:124,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_addr.c:128,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_addr.c:134,26'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_addr.c:137,29'
          Dst:             krb5_ser_unpack_int32
    - functionName:    k5_externalize_address
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_size_address
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_addr.c:70,14'
          Dst:             k5_size_address
        - Src:             'ser_addr.c:72,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_addr.c:75,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_addr.c:79,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_addr.c:83,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_addr.c:88,20'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_address
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_internalize_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          277
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - calloc
        - k5_internalize_authdata
        - k5_internalize_checksum
        - k5_internalize_keyblock
        - k5_internalize_principal
        - k5_ser_unpack_len
        - krb5_free_authenticator
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_auth.c:177,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_auth.c:185,14'
          Dst:             calloc
        - Src:             'ser_auth.c:188,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_auth.c:192,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_auth.c:196,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_auth.c:202,20'
          Dst:             k5_internalize_principal
        - Src:             'ser_auth.c:209,24'
          Dst:             k5_internalize_checksum
        - Src:             'ser_auth.c:217,24'
          Dst:             k5_internalize_keyblock
        - Src:             'ser_auth.c:224,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_auth.c:228,22'
          Dst:             calloc
        - Src:             'ser_auth.c:230,32'
          Dst:             k5_internalize_authdata
        - Src:             'ser_auth.c:237,32'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_auth.c:251,17'
          Dst:             krb5_free_authenticator
    - functionName:    k5_externalize_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          260
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - k5_externalize_authdata
        - k5_externalize_checksum
        - k5_externalize_keyblock
        - k5_externalize_principal
        - k5_size_authenticator
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_auth.c:96,14'
          Dst:             k5_size_authenticator
        - Src:             'ser_auth.c:99,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_auth.c:102,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_auth.c:106,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_auth.c:110,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_auth.c:115,24'
          Dst:             k5_externalize_principal
        - Src:             'ser_auth.c:122,24'
          Dst:             k5_externalize_checksum
        - Src:             'ser_auth.c:127,24'
          Dst:             k5_externalize_keyblock
        - Src:             'ser_auth.c:136,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_auth.c:142,32'
          Dst:             k5_externalize_authdata
        - Src:             'ser_auth.c:154,24'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_authenticator
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          179
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - k5_size_authdata
        - k5_size_checksum
        - k5_size_keyblock
        - k5_size_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_auth.c:53,20'
          Dst:             k5_size_principal
        - Src:             'ser_auth.c:59,20'
          Dst:             k5_size_checksum
        - Src:             'ser_auth.c:63,20'
          Dst:             k5_size_keyblock
        - Src:             'ser_auth.c:70,24'
          Dst:             k5_size_authdata
    - functionName:    k5_internalize_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          185
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - calloc
        - k5_ser_unpack_len
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_cksum.c:112,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_cksum.c:119,43'
          Dst:             calloc
        - Src:             'ser_cksum.c:121,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_cksum.c:125,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_cksum.c:131,27'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_cksum.c:135,24'
          Dst:             krb5_ser_unpack_int32
    - functionName:    k5_externalize_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_size_checksum
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_cksum.c:70,14'
          Dst:             k5_size_checksum
        - Src:             'ser_cksum.c:72,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_cksum.c:75,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_cksum.c:79,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_cksum.c:83,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_cksum.c:88,20'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_checksum
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    internalize_oscontext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          134
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
        - krb5_ser_unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:397,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:404,14'
          Dst:             calloc
        - Src:             'ser_ctx.c:409,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:410,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:411,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:412,20'
          Dst:             krb5_ser_unpack_int32
    - functionName:    k5_internalize_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          398
      EdgeCount:       94
      CyclomaticComplexity: 29
      functionsReached:
        - calloc
        - internalize_oscontext
        - k5_ser_unpack_len
        - krb5_free_context
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
        - profile_ser_internalize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:220,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:227,30'
          Dst:             calloc
        - Src:             'ser_ctx.c:232,12'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_ctx.c:243,16'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_ctx.c:252,12'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_ctx.c:256,31'
          Dst:             calloc
        - Src:             'ser_ctx.c:262,25'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:271,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:276,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:281,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:286,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:291,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:300,16'
          Dst:             internalize_oscontext
        - Src:             'ser_ctx.c:311,12'
          Dst:             profile_ser_internalize
        - Src:             'ser_ctx.c:316,17'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_ctx.c:333,9'
          Dst:             krb5_free_context
    - functionName:    externalize_oscontext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_ser_pack_int32
        - size_oscontext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:364,14'
          Dst:             size_oscontext
        - Src:             'ser_ctx.c:365,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:366,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:367,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:368,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:369,20'
          Dst:             krb5_ser_pack_int32
    - functionName:    size_oscontext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_externalize_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          357
      EdgeCount:       76
      CyclomaticComplexity: 24
      functionsReached:
        - etypes_len
        - externalize_oscontext
        - k5_size_context
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
        - profile_ser_externalize
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:109,17'
          Dst:             k5_size_context
        - Src:             'ser_ctx.c:116,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:122,45'
          Dst:             strlen
        - Src:             'ser_ctx.c:121,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:130,36'
          Dst:             strlen
        - Src:             'ser_ctx.c:129,16'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_ctx.c:137,32'
          Dst:             etypes_len
        - Src:             'ser_ctx.c:137,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:144,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:151,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:157,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:163,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:169,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:175,12'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_ctx.c:181,12'
          Dst:             externalize_oscontext
        - Src:             'ser_ctx.c:187,16'
          Dst:             profile_ser_externalize
        - Src:             'ser_ctx.c:196,12'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_context
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - etypes_len
        - profile_ser_size
        - size_oscontext
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:74,22'
          Dst:             etypes_len
        - Src:             'ser_ctx.c:77,25'
          Dst:             strlen
        - Src:             'ser_ctx.c:80,16'
          Dst:             size_oscontext
        - Src:             'ser_ctx.c:84,20'
          Dst:             profile_ser_size
    - functionName:    etypes_len
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_count_etypes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_ctx.c:45,33'
          Dst:             k5_count_etypes
    - functionName:    k5_internalize_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          174
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - calloc
        - k5_ser_unpack_len
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_key.c:108,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_key.c:115,43'
          Dst:             calloc
        - Src:             'ser_key.c:117,20'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_key.c:121,20'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_key.c:126,26'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_key.c:128,24'
          Dst:             krb5_ser_unpack_int32
    - functionName:    k5_externalize_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5_size_keyblock
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_key.c:66,14'
          Dst:             k5_size_keyblock
        - Src:             'ser_key.c:68,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_key.c:71,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_key.c:75,20'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_key.c:79,20'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_key.c:84,20'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_internalize_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          149
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - k5_ser_unpack_len
        - krb5_free_principal
        - krb5_parse_name_flags
        - krb5_ser_unpack_bytes
        - krb5_ser_unpack_int32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_princ.c:103,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_princ.c:107,12'
          Dst:             k5_ser_unpack_len
        - Src:             'ser_princ.c:111,12'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ser_princ.c:117,12'
          Dst:             krb5_parse_name_flags
        - Src:             'ser_princ.c:124,9'
          Dst:             krb5_ser_unpack_int32
        - Src:             'ser_princ.c:134,9'
          Dst:             krb5_free_principal
    - functionName:    k5_externalize_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5_size_principal
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
        - krb5_unparse_name
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_princ.c:68,14'
          Dst:             k5_size_principal
        - Src:             'ser_princ.c:69,26'
          Dst:             krb5_unparse_name
        - Src:             'ser_princ.c:71,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_princ.c:72,57'
          Dst:             strlen
        - Src:             'ser_princ.c:72,24'
          Dst:             krb5_ser_pack_int32
        - Src:             'ser_princ.c:75,44'
          Dst:             strlen
        - Src:             'ser_princ.c:74,24'
          Dst:             krb5_ser_pack_bytes
        - Src:             'ser_princ.c:76,24'
          Dst:             krb5_ser_pack_int32
    - functionName:    k5_size_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ser_princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_unparse_name
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ser_princ.c:45,18'
          Dst:             krb5_unparse_name
        - Src:             'ser_princ.c:46,44'
          Dst:             strlen
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ser_unpack_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          45
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_ser_unpack_len
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_ser_unpack_int32
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:120,11'
          Dst:             krb5_ser_unpack_int32
    - functionName:    krb5_ser_unpack_int32
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - load_32_be
      functionUses:    73
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:86,17'
          Dst:             load_32_be
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    load_64_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:615,12'
          Dst:             __bswap_64
    - functionName:    krb5_ser_unpack_int64
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - load_64_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:102,17'
          Dst:             load_64_be
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_ser_pack_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5memcpy
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:70,9'
          Dst:             k5memcpy
    - functionName:    store_64_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:570,5'
          Dst:             __bswap_64
    - functionName:    krb5_ser_pack_int64
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - store_64_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:54,9'
          Dst:             store_64_be
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    krb5_ser_pack_int32
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/serialize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - store_32_be
      functionUses:    92
      BranchProfiles:  []
      Callsites:
        - Src:             'serialize.c:37,9'
          Dst:             store_32_be
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_principal_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/set_realm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - make_data
        - strdup
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'set_realm.c:39,14'
          Dst:             strlen
        - Src:             'set_realm.c:40,16'
          Dst:             strdup
        - Src:             'set_realm.c:45,24'
          Dst:             make_data
    - functionName:    k5_sname_wildcard_host
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/sname_match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    krb5_sname_match
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/sname_match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - data_eq
        - krb5_principal_compare
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sname_match.c:38,16'
          Dst:             krb5_principal_compare
        - Src:             'sname_match.c:44,41'
          Dst:             data_eq
        - Src:             'sname_match.c:48,10'
          Dst:             data_eq
        - Src:             'sname_match.c:53,10'
          Dst:             data_eq
    - functionName:    krb5_get_server_rcache
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/srv_rcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_rc_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'srv_rcache.c:40,12'
          Dst:             k5_rc_default
    - functionName:    krb5_deltat_to_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:272,9'
          Dst:             snprintf
        - Src:             'str_conv.c:274,9'
          Dst:             snprintf
        - Src:             'str_conv.c:278,9'
          Dst:             snprintf
    - functionName:    krb5_timestamp_to_sfstring
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          129
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - localtime_r
        - strftime
        - ts2tt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:221,25'
          Dst:             ts2tt
        - Src:             'str_conv.c:238,11'
          Dst:             localtime_r
        - Src:             'str_conv.c:240,16'
          Dst:             __errno_location
        - Src:             'str_conv.c:243,22'
          Dst:             strftime
    - functionName:    ts2tt
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2340
      functionLinenumberEnd: 2341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_timestamp_to_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - localtime_r
        - strftime
        - ts2tt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:202,25'
          Dst:             ts2tt
        - Src:             'str_conv.c:207,9'
          Dst:             localtime_r
        - Src:             'str_conv.c:209,11'
          Dst:             strftime
    - functionName:    krb5_string_to_timestamp
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          145
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __ctype_b_loc
        - localtime_r
        - mktime
        - strptime
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:171,11'
          Dst:             time
        - Src:             'str_conv.c:172,9'
          Dst:             localtime_r
        - Src:             'str_conv.c:180,18'
          Dst:             strptime
        - Src:             'str_conv.c:183,30'
          Dst:             __ctype_b_loc
        - Src:             'str_conv.c:188,24'
          Dst:             mktime
    - functionName:    strptime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mktime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_salttype_to_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - krb5int_strlcpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:108,13'
          Dst:             krb5int_strlcpy
    - functionName:    krb5_string_to_salttype
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/str_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str_conv.c:79,14'
          Dst:             strcasecmp
    - functionName:    krb5int_tgtname
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/tgtname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_build_principal_ext
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'tgtname.c:33,12'
          Dst:             krb5_build_principal_ext
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    copy_component_quoting
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          211
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unparse.c:102,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    component_length_quoted
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          166
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    krb5_unparse_name_flags_ext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_unparse_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unparse.c:250,12'
          Dst:             k5_unparse_name
    - functionName:    k5_unparse_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          328
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - component_length_quoted
        - copy_component_quoting
        - krb5_free_default_realm
        - krb5_get_default_realm
        - krb5_realm_compare
        - realloc
        - string2data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'unparse.c:153,15'
          Dst:             krb5_get_default_realm
        - Src:             'unparse.c:157,19'
          Dst:             string2data
        - Src:             'unparse.c:159,13'
          Dst:             krb5_realm_compare
        - Src:             'unparse.c:164,22'
          Dst:             component_length_quoted
        - Src:             'unparse.c:169,22'
          Dst:             component_length_quoted
        - Src:             'unparse.c:184,21'
          Dst:             realloc
        - Src:             'unparse.c:201,14'
          Dst:             copy_component_quoting
        - Src:             'unparse.c:209,14'
          Dst:             copy_component_quoting
        - Src:             'unparse.c:215,9'
          Dst:             krb5_free_default_realm
    - functionName:    krb5_unparse_name_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_unparse_name
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'unparse.c:243,12'
          Dst:             k5_unparse_name
    - functionName:    krb5_unparse_name_ext
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_unparse_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unparse.c:234,12'
          Dst:             k5_unparse_name
    - functionName:    krb5_unparse_name
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/unparse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_unparse_name
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'unparse.c:227,12'
          Dst:             k5_unparse_name
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_validate_times
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/valid_times.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_timeofday
        - ts_after
        - ts_incr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'valid_times.c:41,19'
          Dst:             krb5_timeofday
        - Src:             'valid_times.c:50,29'
          Dst:             ts_incr
        - Src:             'valid_times.c:50,9'
          Dst:             ts_after
        - Src:             'valid_times.c:53,31'
          Dst:             ts_incr
        - Src:             'valid_times.c:53,9'
          Dst:             ts_after
    - functionName:    add_princ_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_copy_principal
        - krb5_principal_compare
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:209,13'
          Dst:             krb5_principal_compare
        - Src:             'vfy_increds.c:213,15'
          Dst:             realloc
        - Src:             'vfy_increds.c:218,12'
          Dst:             krb5_copy_principal
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    copy_creds_except
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_cc_end_seq_get
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_cc_store_cred
        - krb5_free_cred_contents
        - krb5_principal_compare
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:62,11'
          Dst:             krb5_cc_start_seq_get
        - Src:             'vfy_increds.c:66,20'
          Dst:             krb5_cc_next_cred
        - Src:             'vfy_increds.c:67,14'
          Dst:             krb5_principal_compare
        - Src:             'vfy_increds.c:68,19'
          Dst:             krb5_cc_store_cred
        - Src:             'vfy_increds.c:69,9'
          Dst:             krb5_free_cred_contents
        - Src:             'vfy_increds.c:74,12'
          Dst:             krb5_cc_end_seq_get
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    free_princ_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_principal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:195,9'
          Dst:             krb5_free_principal
    - functionName:    nofail
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_libdefault_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:47,9'
          Dst:             krb5int_libdefault_boolean
    - functionName:    get_host_princs_from_keytab
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - add_princ_list
        - data_eq_string
        - free_princ_list
        - krb5_kt_end_seq_get
        - krb5_kt_free_entry
        - krb5_kt_next_entry
        - krb5_kt_start_seq_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:233,11'
          Dst:             krb5_kt_start_seq_get
        - Src:             'vfy_increds.c:237,19'
          Dst:             krb5_kt_next_entry
        - Src:             'vfy_increds.c:239,31'
          Dst:             data_eq_string
        - Src:             'vfy_increds.c:240,19'
          Dst:             add_princ_list
        - Src:             'vfy_increds.c:241,9'
          Dst:             krb5_kt_free_entry
        - Src:             'vfy_increds.c:245,11'
          Dst:             krb5_kt_end_seq_get
        - Src:             'vfy_increds.c:255,5'
          Dst:             free_princ_list
    - functionName:    get_vfy_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          329
      EdgeCount:       70
      CyclomaticComplexity: 22
      functionsReached:
        - copy_creds_except
        - empty_data
        - krb5_auth_con_free
        - krb5_auth_con_init
        - krb5_auth_con_setflags
        - krb5_cc_destroy
        - krb5_cc_initialize
        - krb5_cc_new_unique
        - krb5_cc_resolve
        - krb5_cc_store_cred
        - krb5_free_creds
        - krb5_free_data_contents
        - krb5_get_credentials
        - krb5_mk_req_extended
        - krb5_principal_compare
        - krb5_rd_req
        - krb5_timeofday
        - ts_incr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:86,24'
          Dst:             empty_data
        - Src:             'vfy_increds.c:90,9'
          Dst:             krb5_principal_compare
        - Src:             'vfy_increds.c:92,15'
          Dst:             krb5_mk_req_extended
        - Src:             'vfy_increds.c:106,15'
          Dst:             krb5_cc_new_unique
        - Src:             'vfy_increds.c:109,15'
          Dst:             krb5_cc_initialize
        - Src:             'vfy_increds.c:112,15'
          Dst:             krb5_cc_store_cred
        - Src:             'vfy_increds.c:120,15'
          Dst:             krb5_timeofday
        - Src:             'vfy_increds.c:123,34'
          Dst:             ts_incr
        - Src:             'vfy_increds.c:124,15'
          Dst:             krb5_get_credentials
        - Src:             'vfy_increds.c:129,15'
          Dst:             krb5_mk_req_extended
        - Src:             'vfy_increds.c:137,9'
          Dst:             krb5_auth_con_free
        - Src:             'vfy_increds.c:143,11'
          Dst:             krb5_auth_con_init
        - Src:             'vfy_increds.c:146,11'
          Dst:             krb5_auth_con_setflags
        - Src:             'vfy_increds.c:151,11'
          Dst:             krb5_rd_req
        - Src:             'vfy_increds.c:159,19'
          Dst:             krb5_cc_resolve
        - Src:             'vfy_increds.c:162,19'
          Dst:             krb5_cc_initialize
        - Src:             'vfy_increds.c:165,19'
          Dst:             copy_creds_except
        - Src:             'vfy_increds.c:171,19'
          Dst:             copy_creds_except
        - Src:             'vfy_increds.c:177,9'
          Dst:             krb5_cc_destroy
        - Src:             'vfy_increds.c:179,9'
          Dst:             krb5_cc_destroy
        - Src:             'vfy_increds.c:180,5'
          Dst:             krb5_free_creds
        - Src:             'vfy_increds.c:181,5'
          Dst:             krb5_auth_con_free
        - Src:             'vfy_increds.c:182,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_verify_init_creds
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vfy_increds.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          201
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - free_princ_list
        - get_host_princs_from_keytab
        - get_vfy_cred
        - krb5_kt_close
        - krb5_kt_default
        - krb5_kt_free_entry
        - krb5_kt_get_entry
        - nofail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vfy_increds.c:273,15'
          Dst:             krb5_kt_default
        - Src:             'vfy_increds.c:281,15'
          Dst:             krb5_kt_get_entry
        - Src:             'vfy_increds.c:284,9'
          Dst:             krb5_kt_free_entry
        - Src:             'vfy_increds.c:286,15'
          Dst:             get_vfy_cred
        - Src:             'vfy_increds.c:293,15'
          Dst:             get_host_princs_from_keytab
        - Src:             'vfy_increds.c:304,19'
          Dst:             get_vfy_cred
        - Src:             'vfy_increds.c:313,24'
          Dst:             nofail
        - Src:             'vfy_increds.c:317,9'
          Dst:             krb5_kt_close
        - Src:             'vfy_increds.c:318,5'
          Dst:             free_princ_list
    - functionName:    krb5_verify_init_creds_opt_set_ap_req_nofail
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 15
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_verify_init_creds_opt_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/vic_opt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6
      functionLinenumberEnd: 8
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rtree_hier_tweens
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          179
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:497,16'
          Dst:             realloc
    - functionName:    adjtail
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          185
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    comtail
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          156
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_data_contents
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:462,9'
          Dst:             krb5_free_data_contents
    - functionName:    rtree_hier_realms
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          221
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - adjtail
        - calloc
        - comtail
        - free_realmlist
        - krb5int_copy_data_contents
        - rtree_hier_tweens
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:417,5'
          Dst:             comtail
        - Src:             'walk_rtree.c:418,5'
          Dst:             adjtail
        - Src:             'walk_rtree.c:420,14'
          Dst:             rtree_hier_tweens
        - Src:             'walk_rtree.c:422,14'
          Dst:             rtree_hier_tweens
        - Src:             'walk_rtree.c:425,14'
          Dst:             calloc
        - Src:             'walk_rtree.c:432,18'
          Dst:             krb5int_copy_data_contents
        - Src:             'walk_rtree.c:438,18'
          Dst:             krb5int_copy_data_contents
        - Src:             'walk_rtree.c:446,9'
          Dst:             free_realmlist
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_free_realm_tree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:622,9'
          Dst:             krb5_free_principal
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_client_realm_path
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          239
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - calloc
        - empty_data
        - krb5int_copy_data_contents
        - krb5int_free_data_list
        - make_data
        - profile_free_list
        - rtree_capath_vals
        - strcspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:132,14'
          Dst:             rtree_capath_vals
        - Src:             'walk_rtree.c:138,9'
          Dst:             profile_free_list
        - Src:             'walk_rtree.c:145,13'
          Dst:             calloc
        - Src:             'walk_rtree.c:150,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'walk_rtree.c:154,35'
          Dst:             strcspn
        - Src:             'walk_rtree.c:154,13'
          Dst:             make_data
        - Src:             'walk_rtree.c:155,18'
          Dst:             krb5int_copy_data_contents
        - Src:             'walk_rtree.c:159,14'
          Dst:             krb5int_copy_data_contents
        - Src:             'walk_rtree.c:164,20'
          Dst:             empty_data
        - Src:             'walk_rtree.c:169,5'
          Dst:             profile_free_list
        - Src:             'walk_rtree.c:170,5'
          Dst:             krb5int_free_data_list
    - functionName:    rtree_capath_vals
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - k5memdup0
        - profile_get_values
      functionUses:    2
      BranchProfiles:
        - Branch String:   'walk_rtree.c:324,5'
          Branch Sides:    []
      Callsites:
        - Src:             'walk_rtree.c:311,15'
          Dst:             k5memdup0
        - Src:             'walk_rtree.c:315,15'
          Dst:             k5memdup0
        - Src:             'walk_rtree.c:323,14'
          Dst:             profile_get_values
    - functionName:    rtree_hier_tree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          176
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - calloc
        - free_realmlist
        - krb5_free_principal
        - krb5int_tgtname
        - rtree_hier_realms
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:358,14'
          Dst:             rtree_hier_realms
        - Src:             'walk_rtree.c:363,21'
          Dst:             calloc
        - Src:             'walk_rtree.c:373,18'
          Dst:             krb5int_tgtname
        - Src:             'walk_rtree.c:378,5'
          Dst:             free_realmlist
        - Src:             'walk_rtree.c:382,9'
          Dst:             krb5_free_principal
        - Src:             'walk_rtree.c:385,5'
          Dst:             free_realmlist
    - functionName:    rtree_capath_tree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          254
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - calloc
        - krb5_free_principal
        - krb5int_tgtname
        - profile_free_list
        - strcspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:256,12'
          Dst:             calloc
        - Src:             'walk_rtree.c:266,14'
          Dst:             krb5int_tgtname
        - Src:             'walk_rtree.c:271,27'
          Dst:             strcspn
        - Src:             'walk_rtree.c:272,18'
          Dst:             krb5int_tgtname
        - Src:             'walk_rtree.c:276,14'
          Dst:             krb5int_tgtname
        - Src:             'walk_rtree.c:281,5'
          Dst:             profile_free_list
        - Src:             'walk_rtree.c:285,13'
          Dst:             krb5_free_principal
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    krb5_walk_realm_tree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/walk_rtree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - data_eq
        - rtree_capath_tree
        - rtree_capath_vals
        - rtree_hier_tree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'walk_rtree.c:108,9'
          Dst:             data_eq
        - Src:             'walk_rtree.c:110,14'
          Dst:             rtree_capath_vals
        - Src:             'walk_rtree.c:115,18'
          Dst:             rtree_capath_tree
        - Src:             'walk_rtree.c:119,14'
          Dst:             rtree_hier_tree
    - functionName:    k5_memrcache_free
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/memrcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - discard_entry
        - k5_hashtab_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'memrcache.c:161,9'
          Dst:             discard_entry
        - Src:             'memrcache.c:163,5'
          Dst:             k5_hashtab_free
    - functionName:    discard_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/memrcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          83
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - k5_hashtab_remove
        - krb5_free_data_contents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'memrcache.c:89,5'
          Dst:             k5_hashtab_remove
        - Src:             'memrcache.c:91,5'
          Dst:             krb5_free_data_contents
    - functionName:    insert_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/memrcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          127
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - k5_hashtab_add
        - krb5_free_data_contents
        - krb5int_copy_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'memrcache.c:59,13'
          Dst:             calloc
        - Src:             'memrcache.c:64,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'memrcache.c:68,11'
          Dst:             k5_hashtab_add
        - Src:             'memrcache.c:78,9'
          Dst:             krb5_free_data_contents
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_memrcache_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/memrcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          118
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - discard_entry
        - insert_entry
        - k5_hashtab_get
        - krb5_timeofday
        - ts_after
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'memrcache.c:132,11'
          Dst:             krb5_timeofday
        - Src:             'memrcache.c:137,9'
          Dst:             k5_hashtab_get
        - Src:             'memrcache.c:143,28'
          Dst:             ts_incr
        - Src:             'memrcache.c:143,14'
          Dst:             ts_after
        - Src:             'memrcache.c:145,9'
          Dst:             discard_entry
        - Src:             'memrcache.c:149,12'
          Dst:             insert_entry
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_memrcache_create
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/memrcache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - k5_hashtab_create
        - krb5_c_random_make_octets
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'memrcache.c:102,27'
          Dst:             make_data
        - Src:             'memrcache.c:106,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'memrcache.c:110,11'
          Dst:             calloc
        - Src:             'memrcache.c:113,11'
          Dst:             k5_hashtab_create
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5_rc_initialize
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_rc_get_lifespan
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_rc_destroy
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_rc_default
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    k5_rc_get_name
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_rc_tag_from_ciphertext
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - empty_data
        - krb5_c_crypto_length
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_base.c:154,16'
          Dst:             empty_data
        - Src:             'rc_base.c:156,11'
          Dst:             krb5_c_crypto_length
        - Src:             'rc_base.c:162,16'
          Dst:             make_data
    - functionName:    k5_rc_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_rc_tag_from_ciphertext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_base.c:134,11'
          Dst:             k5_rc_tag_from_ciphertext
    - functionName:    k5_rc_close
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5_rc_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          189
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - k5alloc
        - strchr
        - strdup
        - strncmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_base.c:82,11'
          Dst:             strchr
        - Src:             'rc_base.c:88,13'
          Dst:             strncmp
        - Src:             'rc_base.c:94,10'
          Dst:             k5alloc
        - Src:             'rc_base.c:97,16'
          Dst:             strdup
    - functionName:    k5_rc_default
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_base.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - asprintf
        - k5_expand_path_tokens
        - k5_rc_resolve
        - profile_get_string
        - profile_release_string
        - secure_getenv
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_base.c:37,11'
          Dst:             secure_getenv
        - Src:             'rc_base.c:39,16'
          Dst:             k5_rc_resolve
        - Src:             'rc_base.c:43,11'
          Dst:             secure_getenv
        - Src:             'rc_base.c:45,13'
          Dst:             asprintf
        - Src:             'rc_base.c:47,15'
          Dst:             k5_rc_resolve
        - Src:             'rc_base.c:54,9'
          Dst:             profile_get_string
        - Src:             'rc_base.c:57,15'
          Dst:             k5_expand_path_tokens
        - Src:             'rc_base.c:58,9'
          Dst:             profile_release_string
        - Src:             'rc_base.c:61,15'
          Dst:             k5_rc_resolve
        - Src:             'rc_base.c:67,12'
          Dst:             k5_rc_resolve
    - functionName:    open_file
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_dfl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          141
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - asprintf
        - close
        - error_message
        - fstat
        - geteuid
        - krb5_set_error_message
        - open
        - secure_getenv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_dfl.c:90,18'
          Dst:             geteuid
        - Src:             'rc_dfl.c:94,11'
          Dst:             secure_getenv
        - Src:             'rc_dfl.c:96,15'
          Dst:             secure_getenv
        - Src:             'rc_dfl.c:100,9'
          Dst:             asprintf
        - Src:             'rc_dfl.c:103,10'
          Dst:             open
        - Src:             'rc_dfl.c:105,15'
          Dst:             __errno_location
        - Src:             'rc_dfl.c:107,19'
          Dst:             error_message
        - Src:             'rc_dfl.c:106,9'
          Dst:             krb5_set_error_message
        - Src:             'rc_dfl.c:111,9'
          Dst:             fstat
        - Src:             'rc_dfl.c:113,9'
          Dst:             krb5_set_error_message
        - Src:             'rc_dfl.c:124,9'
          Dst:             close
    - functionName:    dfl_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_dfl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - k5_rcfile2_store
        - open_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_dfl.c:149,11'
          Dst:             open_file
        - Src:             'rc_dfl.c:153,11'
          Dst:             k5_rcfile2_store
        - Src:             'rc_dfl.c:154,5'
          Dst:             close
    - functionName:    dfl_close
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_dfl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dfl_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_dfl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    write_record
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - lseek
        - store_32_be
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:112,5'
          Dst:             store_32_be
        - Src:             'rc_file2.c:114,10'
          Dst:             lseek
        - Src:             'rc_file2.c:116,16'
          Dst:             __errno_location
        - Src:             'rc_file2.c:117,10'
          Dst:             write
        - Src:             'rc_file2.c:119,16'
          Dst:             __errno_location
    - functionName:    expired
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ts_after
        - ts_incr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:131,26'
          Dst:             ts_incr
        - Src:             'rc_file2.c:131,12'
          Dst:             ts_after
    - functionName:    read_records
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - load_32_be
        - lseek
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:83,10'
          Dst:             lseek
        - Src:             'rc_file2.c:85,16'
          Dst:             __errno_location
        - Src:             'rc_file2.c:86,10'
          Dst:             read
        - Src:             'rc_file2.c:88,16'
          Dst:             __errno_location
        - Src:             'rc_file2.c:92,27'
          Dst:             load_32_be
        - Src:             'rc_file2.c:97,27'
          Dst:             load_32_be
    - functionName:    next_table
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file2_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - close
        - error_message
        - k5_rcfile2_store
        - krb5_set_error_message
        - open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:248,10'
          Dst:             open
        - Src:             'rc_file2.c:250,15'
          Dst:             __errno_location
        - Src:             'rc_file2.c:251,54'
          Dst:             error_message
        - Src:             'rc_file2.c:251,9'
          Dst:             krb5_set_error_message
        - Src:             'rc_file2.c:255,11'
          Dst:             k5_rcfile2_store
        - Src:             'rc_file2.c:256,5'
          Dst:             close
    - functionName:    k5_rcfile2_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          108
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_lock_file
        - krb5_timeofday
        - krb5_unlock_file
        - store
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:207,11'
          Dst:             krb5_timeofday
        - Src:             'rc_file2.c:220,11'
          Dst:             krb5_lock_file
        - Src:             'rc_file2.c:223,11'
          Dst:             store
        - Src:             'rc_file2.c:224,11'
          Dst:             krb5_unlock_file
    - functionName:    store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          331
      EdgeCount:       84
      CyclomaticComplexity: 25
      functionsReached:
        - __errno_location
        - expired
        - k5_siphash24
        - krb5_c_random_make_octets
        - make_data
        - memcmp
        - next_table
        - read
        - read_records
        - write
        - write_record
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:149,10'
          Dst:             read
        - Src:             'rc_file2.c:151,16'
          Dst:             __errno_location
        - Src:             'rc_file2.c:153,13'
          Dst:             make_data
        - Src:             'rc_file2.c:154,15'
          Dst:             krb5_c_random_make_octets
        - Src:             'rc_file2.c:157,14'
          Dst:             write
        - Src:             'rc_file2.c:159,20'
          Dst:             __errno_location
        - Src:             'rc_file2.c:165,15'
          Dst:             next_table
        - Src:             'rc_file2.c:169,15'
          Dst:             k5_siphash24
        - Src:             'rc_file2.c:172,15'
          Dst:             read_records
        - Src:             'rc_file2.c:177,39'
          Dst:             memcmp
        - Src:             'rc_file2.c:178,39'
          Dst:             memcmp
        - Src:             'rc_file2.c:184,43'
          Dst:             expired
        - Src:             'rc_file2.c:186,48'
          Dst:             expired
        - Src:             'rc_file2.c:193,20'
          Dst:             write_record
    - functionName:    file2_close
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file2_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_file2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc_file2.c:231,19'
          Dst:             strdup
    - functionName:    none_store
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_none.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    none_close
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_none.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    none_resolve
      functionSourceFile: '/src/krb5/src/lib/krb5/rcache/rc_none.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_ucstrncmp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucstr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_ucstrncasecmp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucstr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - uctolower
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ucstr.c:50,21'
          Dst:             uctolower
        - Src:             'ucstr.c:51,21'
          Dst:             uctolower
    - functionName:    krb5int_utf8_normcmp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucstr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          789
      EdgeCount:       164
      CyclomaticComplexity: 45
      functionsReached:
        - __ctype_b_loc
        - krb5int_ucstrncasecmp
        - krb5int_ucstrncmp
        - krb5int_utf8_to_ucs4
        - tolower
        - uccanoncomp
        - uccompatdecomp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ucstr.c:126,16'
          Dst:             __ctype_b_loc
        - Src:             'ucstr.c:126,16'
          Dst:             tolower
        - Src:             'ucstr.c:127,16'
          Dst:             __ctype_b_loc
        - Src:             'ucstr.c:127,16'
          Dst:             tolower
        - Src:             'ucstr.c:181,6'
          Dst:             krb5int_utf8_to_ucs4
        - Src:             'ucstr.c:197,2'
          Dst:             uccompatdecomp
        - Src:             'ucstr.c:198,7'
          Dst:             uccanoncomp
        - Src:             'ucstr.c:203,6'
          Dst:             krb5int_utf8_to_ucs4
        - Src:             'ucstr.c:215,2'
          Dst:             uccompatdecomp
        - Src:             'ucstr.c:216,7'
          Dst:             uccanoncomp
        - Src:             'ucstr.c:221,4'
          Dst:             krb5int_ucstrncasecmp
        - Src:             'ucstr.c:222,4'
          Dst:             krb5int_ucstrncmp
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_utf8_validate
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucstr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          217
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - k5_input_get_bytes
        - k5_input_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ucstr.c:71,5'
          Dst:             k5_input_init
        - Src:             'ucstr.c:76,10'
          Dst:             k5_input_get_bytes
    - functionName:    krb5int_accessor
      functionSourceFile: '/src/krb5/src/lib/krb5/os/accessor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_from_os
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ccdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_expand_path_tokens
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefname.c:230,11'
          Dst:             k5_expand_path_tokens
    - functionName:    krb5_cc_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ccdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          112
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - get_from_os
        - k5_expand_path_tokens
        - profile_get_string
        - profile_release_string
        - secure_getenv
        - strdup
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefname.c:303,14'
          Dst:             secure_getenv
        - Src:             'ccdefname.c:305,34'
          Dst:             strdup
        - Src:             'ccdefname.c:309,9'
          Dst:             profile_get_string
        - Src:             'ccdefname.c:312,15'
          Dst:             k5_expand_path_tokens
        - Src:             'ccdefname.c:313,9'
          Dst:             profile_release_string
        - Src:             'ccdefname.c:318,5'
          Dst:             get_from_os
    - functionName:    set_for_os
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ccdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_set_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ccdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefname.c:276,22'
          Dst:             strdup
    - functionName:    krb5int_cc_user_set_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ccdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_cc_set_default_name
        - set_for_os
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccdefname.c:259,11'
          Dst:             krb5_cc_set_default_name
        - Src:             'ccdefname.c:262,5'
          Dst:             set_for_os
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss2sin6
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss2sin
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss2sa
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kpasswd_sendto_msg_cleanup
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_data_contents
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:105,5'
          Dst:             krb5_free_data_contents
    - functionName:    kpasswd_sendto_msg_callback
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          250
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - getsockname
        - krb5_auth_con_setaddrs
        - krb5_free_addresses
        - krb5_os_localaddr
        - krb5int_mk_chpw_req
        - krb5int_mk_setpw_req
        - memcmp
        - ss2sa
        - ss2sin
        - ss2sin6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:127,25'
          Dst:             ss2sa
        - Src:             'changepw.c:127,9'
          Dst:             getsockname
        - Src:             'changepw.c:128,16'
          Dst:             __errno_location
        - Src:             'changepw.c:136,9'
          Dst:             ss2sin
        - Src:             'changepw.c:139,48'
          Dst:             ss2sin
        - Src:             'changepw.c:141,23'
          Dst:             ss2sin6
        - Src:             'changepw.c:141,16'
          Dst:             memcmp
        - Src:             'changepw.c:145,48'
          Dst:             ss2sin6
        - Src:             'changepw.c:153,16'
          Dst:             krb5_os_localaddr
        - Src:             'changepw.c:166,17'
          Dst:             krb5_auth_con_setaddrs
        - Src:             'changepw.c:174,16'
          Dst:             krb5int_mk_setpw_req
        - Src:             'changepw.c:181,16'
          Dst:             krb5int_mk_chpw_req
        - Src:             'changepw.c:193,5'
          Dst:             krb5_free_addresses
    - functionName:    getsockname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    locate_kpasswd
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          156
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - htons
        - k5_locate_server
        - ss2sin
        - ss2sin6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:66,12'
          Dst:             k5_locate_server
        - Src:             'changepw.c:69,16'
          Dst:             k5_locate_server
        - Src:             'changepw.c:83,50'
          Dst:             htons
        - Src:             'changepw.c:83,21'
          Dst:             ss2sin
        - Src:             'changepw.c:85,52'
          Dst:             htons
        - Src:             'changepw.c:85,21'
          Dst:             ss2sin6
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_set_password_using_ccache
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          126
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - empty_data
        - krb5_build_principal
        - krb5_cc_get_principal
        - krb5_free_cred_contents
        - krb5_free_creds
        - krb5_get_credentials
        - krb5_set_password
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:356,22'
          Dst:             empty_data
        - Src:             'changepw.c:358,31'
          Dst:             empty_data
        - Src:             'changepw.c:367,12'
          Dst:             krb5_cc_get_principal
        - Src:             'changepw.c:369,16'
          Dst:             krb5_build_principal
        - Src:             'changepw.c:374,20'
          Dst:             krb5_get_credentials
        - Src:             'changepw.c:376,24'
          Dst:             krb5_set_password
        - Src:             'changepw.c:379,17'
          Dst:             krb5_free_creds
        - Src:             'changepw.c:382,9'
          Dst:             krb5_free_cred_contents
    - functionName:    krb5_set_password
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - change_set_password
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:338,12'
          Dst:             change_set_password
    - functionName:    change_set_password
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          294
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - empty_data
        - k5_free_serverlist
        - k5_sendto
        - krb5_auth_con_free
        - krb5_auth_con_init
        - krb5_chpw_result_code_string
        - krb5_free_data_contents
        - krb5_mk_req_extended
        - krb5int_rd_chpw_rep
        - locate_kpasswd
        - ss2sa
        - strlen
        - strncpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:224,22'
          Dst:             empty_data
        - Src:             'changepw.c:226,31'
          Dst:             empty_data
        - Src:             'changepw.c:234,17'
          Dst:             krb5_auth_con_init
        - Src:             'changepw.c:238,17'
          Dst:             krb5_mk_req_extended
        - Src:             'changepw.c:249,12'
          Dst:             locate_kpasswd
        - Src:             'changepw.c:258,5'
          Dst:             krb5_free_data_contents
        - Src:             'changepw.c:264,22'
          Dst:             ss2sa
        - Src:             'changepw.c:262,12'
          Dst:             k5_sendto
        - Src:             'changepw.c:268,26'
          Dst:             ss2sa
        - Src:             'changepw.c:266,16'
          Dst:             k5_sendto
        - Src:             'changepw.c:273,12'
          Dst:             krb5int_rd_chpw_rep
        - Src:             'changepw.c:285,16'
          Dst:             krb5_chpw_result_code_string
        - Src:             'changepw.c:291,38'
          Dst:             strlen
        - Src:             'changepw.c:297,9'
          Dst:             strncpy
        - Src:             'changepw.c:302,9'
          Dst:             krb5_auth_con_free
        - Src:             'changepw.c:304,5'
          Dst:             k5_free_serverlist
        - Src:             'changepw.c:305,5'
          Dst:             krb5_free_data_contents
        - Src:             'changepw.c:306,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_change_password
      functionSourceFile: '/src/krb5/src/lib/krb5/os/changepw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - change_set_password
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'changepw.c:319,12'
          Dst:             change_set_password
    - functionName:    expand_null
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:348,12'
          Dst:             strdup
    - functionName:    expand_userid
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
        - getuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:294,45'
          Dst:             getuid
        - Src:             'expand_path.c:294,9'
          Dst:             asprintf
    - functionName:    getuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_temp_folder
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - secure_getenv
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:283,13'
          Dst:             secure_getenv
        - Src:             'expand_path.c:284,12'
          Dst:             strdup
    - functionName:    expand_username
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          79
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dgettext
        - geteuid
        - getpwuid_r
        - krb5_set_error_message
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:311,18'
          Dst:             geteuid
        - Src:             'expand_path.c:315,9'
          Dst:             getpwuid_r
        - Src:             'expand_path.c:316,36'
          Dst:             dgettext
        - Src:             'expand_path.c:316,9'
          Dst:             krb5_set_error_message
        - Src:             'expand_path.c:320,12'
          Dst:             strdup
    - functionName:    expand_euid
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
        - geteuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:302,45'
          Dst:             geteuid
        - Src:             'expand_path.c:302,9'
          Dst:             asprintf
    - functionName:    expand_path
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:270,12'
          Dst:             strdup
    - functionName:    expand_extra_token
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:334,12'
          Dst:             strdup
    - functionName:    free_extra_tokens
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_token
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          189
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - dgettext
        - expand_extra_token
        - krb5_set_error_message
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:405,36'
          Dst:             dgettext
        - Src:             'expand_path.c:405,9'
          Dst:             krb5_set_error_message
        - Src:             'expand_path.c:410,13'
          Dst:             strncmp
        - Src:             'expand_path.c:411,20'
          Dst:             expand_extra_token
        - Src:             'expand_path.c:415,14'
          Dst:             strncmp
        - Src:             'expand_path.c:421,32'
          Dst:             dgettext
        - Src:             'expand_path.c:421,5'
          Dst:             krb5_set_error_message
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5_expand_path_tokens_extra
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          252
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - dgettext
        - expand_token
        - free_extra_tokens
        - k5_buf_add
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_init_dynamic
        - k5calloc
        - krb5_set_error_message
        - strchr
        - strdup
        - strstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:465,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'expand_path.c:477,24'
          Dst:             k5calloc
        - Src:             'expand_path.c:482,31'
          Dst:             strdup
        - Src:             'expand_path.c:496,21'
          Dst:             strstr
        - Src:             'expand_path.c:498,13'
          Dst:             k5_buf_add
        - Src:             'expand_path.c:501,9'
          Dst:             k5_buf_add_len
        - Src:             'expand_path.c:504,19'
          Dst:             strchr
        - Src:             'expand_path.c:507,37'
          Dst:             dgettext
        - Src:             'expand_path.c:507,13'
          Dst:             krb5_set_error_message
        - Src:             'expand_path.c:512,15'
          Dst:             expand_token
        - Src:             'expand_path.c:516,9'
          Dst:             k5_buf_add
        - Src:             'expand_path.c:521,12'
          Dst:             k5_buf_cstring
        - Src:             'expand_path.c:542,5'
          Dst:             k5_buf_free
        - Src:             'expand_path.c:543,5'
          Dst:             free_extra_tokens
    - functionName:    strstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_expand_path_tokens
      functionSourceFile: '/src/krb5/src/lib/krb5/os/expand_path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_expand_path_tokens_extra
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'expand_path.c:433,12'
          Dst:             k5_expand_path_tokens_extra
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    sa2sin6
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa2sin
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_os_hostaddr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          339
      EdgeCount:       64
      CyclomaticComplexity: 13
      functionsReached:
        - k5calloc
        - k5memdup
        - krb5_free_addresses
        - krb5int_freeaddrinfo
        - krb5int_getaddrinfo
        - sa2sin
        - sa2sin6
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hostaddr.c:62,9'
          Branch Sides:    []
        - Branch String:   'hostaddr.c:84,9'
          Branch Sides:    []
      Callsites:
        - Src:             'hostaddr.c:53,9'
          Dst:             krb5int_getaddrinfo
        - Src:             'hostaddr.c:56,13'
          Dst:             krb5int_getaddrinfo
        - Src:             'hostaddr.c:72,13'
          Dst:             k5calloc
        - Src:             'hostaddr.c:87,20'
          Dst:             sa2sin
        - Src:             'hostaddr.c:92,20'
          Dst:             sa2sin6
        - Src:             'hostaddr.c:106,30'
          Dst:             k5memdup
        - Src:             'hostaddr.c:114,9'
          Dst:             krb5int_freeaddrinfo
        - Src:             'hostaddr.c:123,9'
          Dst:             krb5_free_addresses
        - Src:             'hostaddr.c:126,9'
          Dst:             krb5int_freeaddrinfo
    - functionName:    default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    get_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - hostrealm_dns_initvt
        - hostrealm_domain_initvt
        - hostrealm_profile_initvt
        - hostrealm_registry_initvt
        - k5_plugin_load_all
        - k5_plugin_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:78,11'
          Dst:             k5_plugin_register
        - Src:             'hostrealm.c:78,11'
          Dst:             hostrealm_registry_initvt
        - Src:             'hostrealm.c:82,11'
          Dst:             k5_plugin_register
        - Src:             'hostrealm.c:82,11'
          Dst:             hostrealm_profile_initvt
        - Src:             'hostrealm.c:86,11'
          Dst:             k5_plugin_register
        - Src:             'hostrealm.c:86,11'
          Dst:             hostrealm_dns_initvt
        - Src:             'hostrealm.c:89,11'
          Dst:             k5_plugin_register
        - Src:             'hostrealm.c:89,11'
          Dst:             hostrealm_domain_initvt
        - Src:             'hostrealm.c:93,12'
          Dst:             k5_plugin_load_all
    - functionName:    free_handles
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_hostrealm_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_handles
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:545,5'
          Dst:             free_handles
    - functionName:    krb5_set_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          85
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:528,34'
          Dst:             strdup
    - functionName:    get_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          128
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - default_realm
        - free_list
        - load_hostrealm_modules
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:470,15'
          Dst:             load_hostrealm_modules
        - Src:             'hostrealm.c:477,15'
          Dst:             default_realm
        - Src:             'hostrealm.c:482,30'
          Dst:             strdup
        - Src:             'hostrealm.c:486,13'
          Dst:             free_list
    - functionName:    load_hostrealm_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         35
      ICount:          211
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - free_handles
        - get_modules
        - k5_plugin_free_modules
        - k5alloc
        - krb5int_trace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:105,11'
          Dst:             get_modules
        - Src:             'hostrealm.c:111,12'
          Dst:             k5alloc
        - Src:             'hostrealm.c:118,18'
          Dst:             k5alloc
        - Src:             'hostrealm.c:123,13'
          Dst:             krb5int_trace
        - Src:             'hostrealm.c:132,17'
          Dst:             krb5int_trace
        - Src:             'hostrealm.c:147,5'
          Dst:             k5_plugin_free_modules
        - Src:             'hostrealm.c:148,5'
          Dst:             free_handles
    - functionName:    free_list
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_host_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - get_default_realm
        - strdup
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:507,15'
          Dst:             get_default_realm
        - Src:             'hostrealm.c:511,18'
          Dst:             strdup
    - functionName:    fallback_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5_get_fallback_host_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          155
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - clean_hostname
        - copy_list
        - fallback_realm
        - free_list
        - k5_make_realmlist
        - k5memdup0
        - krb5_free_default_realm
        - krb5_get_default_realm
        - load_hostrealm_modules
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:411,12'
          Dst:             k5memdup0
        - Src:             'hostrealm.c:414,11'
          Dst:             clean_hostname
        - Src:             'hostrealm.c:420,15'
          Dst:             load_hostrealm_modules
        - Src:             'hostrealm.c:427,15'
          Dst:             fallback_realm
        - Src:             'hostrealm.c:429,19'
          Dst:             copy_list
        - Src:             'hostrealm.c:430,13'
          Dst:             free_list
        - Src:             'hostrealm.c:438,11'
          Dst:             krb5_get_default_realm
        - Src:             'hostrealm.c:441,11'
          Dst:             k5_make_realmlist
        - Src:             'hostrealm.c:442,5'
          Dst:             krb5_free_default_realm
    - functionName:    clean_hostname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          141
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __ctype_b_loc
        - krb5int_get_fq_local_hostname
        - strdup
        - strlen
        - tolower
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:292,21'
          Dst:             strdup
        - Src:             'hostrealm.c:296,15'
          Dst:             krb5int_get_fq_local_hostname
        - Src:             'hostrealm.c:303,13'
          Dst:             __ctype_b_loc
        - Src:             'hostrealm.c:304,18'
          Dst:             tolower
        - Src:             'hostrealm.c:308,9'
          Dst:             strlen
    - functionName:    copy_list
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - krb5_free_host_realm
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:199,12'
          Dst:             calloc
        - Src:             'hostrealm.c:203,19'
          Dst:             strdup
        - Src:             'hostrealm.c:205,13'
          Dst:             krb5_free_host_realm
    - functionName:    k5_make_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - strdup
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:348,14'
          Dst:             calloc
        - Src:             'hostrealm.c:351,17'
          Dst:             strdup
    - functionName:    krb5int_get_fq_local_hostname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - gethostname
        - krb5int_freeaddrinfo
        - krb5int_getaddrinfo
        - strdup
        - translate_gai_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:265,9'
          Dst:             gethostname
        - Src:             'hostrealm.c:266,16'
          Dst:             __errno_location
        - Src:             'hostrealm.c:270,11'
          Dst:             krb5int_getaddrinfo
        - Src:             'hostrealm.c:272,16'
          Dst:             translate_gai_error
        - Src:             'hostrealm.c:274,9'
          Dst:             krb5int_freeaddrinfo
        - Src:             'hostrealm.c:277,21'
          Dst:             strdup
        - Src:             'hostrealm.c:278,5'
          Dst:             krb5int_freeaddrinfo
    - functionName:    gethostname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    translate_gai_error
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hostrealm.c:216,5'
          Branch Sides:    []
      Callsites:
        - Src:             'hostrealm.c:247,16'
          Dst:             __errno_location
        - Src:             'hostrealm.c:250,5'
          Dst:             abort
    - functionName:    host_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_host_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - clean_hostname
        - copy_list
        - free_list
        - host_realm
        - k5_make_realmlist
        - load_hostrealm_modules
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:370,15'
          Dst:             load_hostrealm_modules
        - Src:             'hostrealm.c:375,11'
          Dst:             clean_hostname
        - Src:             'hostrealm.c:381,15'
          Dst:             host_realm
        - Src:             'hostrealm.c:383,19'
          Dst:             copy_list
        - Src:             'hostrealm.c:384,13'
          Dst:             free_list
        - Src:             'hostrealm.c:393,11'
          Dst:             k5_make_realmlist
    - functionName:    k5_is_numeric_address
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          89
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strchr
        - strlen
        - strspn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm.c:325,9'
          Dst:             strspn
        - Src:             'hostrealm.c:325,41'
          Dst:             strlen
        - Src:             'hostrealm.c:335,9'
          Dst:             strchr
    - functionName:    txt_lookup
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_dns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5_try_realm_txt_rr
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_dns.c:53,13'
          Dst:             k5_try_realm_txt_rr
        - Src:             'hostrealm_dns.c:55,16'
          Dst:             strchr
    - functionName:    dns_free_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_dns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_host_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_dns.c:115,5'
          Dst:             krb5_free_host_realm
    - functionName:    dns_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_dns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - _krb5_use_dns_realm
        - k5_make_realmlist
        - k5_try_realm_txt_rr
        - krb5int_get_fq_local_hostname
        - txt_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_dns.c:90,10'
          Dst:             _krb5_use_dns_realm
        - Src:             'hostrealm_dns.c:93,11'
          Dst:             krb5int_get_fq_local_hostname
        - Src:             'hostrealm_dns.c:99,13'
          Dst:             txt_lookup
        - Src:             'hostrealm_dns.c:102,15'
          Dst:             k5_try_realm_txt_rr
        - Src:             'hostrealm_dns.c:106,11'
          Dst:             k5_make_realmlist
    - functionName:    dns_fallback_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_dns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _krb5_use_dns_realm
        - k5_is_numeric_address
        - k5_make_realmlist
        - txt_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_dns.c:70,10'
          Dst:             _krb5_use_dns_realm
        - Src:             'hostrealm_dns.c:70,42'
          Dst:             k5_is_numeric_address
        - Src:             'hostrealm_dns.c:74,13'
          Dst:             txt_lookup
        - Src:             'hostrealm_dns.c:77,11'
          Dst:             k5_make_realmlist
    - functionName:    hostrealm_dns_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_dns.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    domain_free_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_host_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_domain.c:115,5'
          Dst:             krb5_free_host_realm
    - functionName:    domain_fallback_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          191
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - __ctype_b_loc
        - k5_free_serverlist
        - k5_is_numeric_address
        - k5_locate_kdc
        - k5_make_realmlist
        - profile_get_integer
        - strchr
        - strdup
        - string2data
        - toupper
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_domain.c:58,9'
          Dst:             k5_is_numeric_address
        - Src:             'hostrealm_domain.c:62,13'
          Dst:             strdup
        - Src:             'hostrealm_domain.c:66,13'
          Dst:             __ctype_b_loc
        - Src:             'hostrealm_domain.c:67,18'
          Dst:             toupper
        - Src:             'hostrealm_domain.c:81,11'
          Dst:             profile_get_integer
        - Src:             'hostrealm_domain.c:86,35'
          Dst:             strchr
        - Src:             'hostrealm_domain.c:87,18'
          Dst:             string2data
        - Src:             'hostrealm_domain.c:88,13'
          Dst:             k5_locate_kdc
        - Src:             'hostrealm_domain.c:89,13'
          Dst:             k5_free_serverlist
        - Src:             'hostrealm_domain.c:90,19'
          Dst:             k5_make_realmlist
        - Src:             'hostrealm_domain.c:100,11'
          Dst:             strchr
        - Src:             'hostrealm_domain.c:102,15'
          Dst:             k5_make_realmlist
    - functionName:    hostrealm_domain_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_free_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_profile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_host_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_profile.c:103,5'
          Dst:             krb5_free_host_realm
    - functionName:    profile_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_profile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_make_realmlist
        - profile_get_string
        - profile_release_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_profile.c:88,11'
          Dst:             profile_get_string
        - Src:             'hostrealm_profile.c:94,11'
          Dst:             k5_make_realmlist
        - Src:             'hostrealm_profile.c:95,5'
          Dst:             profile_release_string
    - functionName:    profile_host_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_profile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_is_numeric_address
        - k5_make_realmlist
        - profile_get_string
        - profile_release_string
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_profile.c:60,9'
          Dst:             k5_is_numeric_address
        - Src:             'hostrealm_profile.c:65,15'
          Dst:             profile_get_string
        - Src:             'hostrealm_profile.c:70,19'
          Dst:             k5_make_realmlist
        - Src:             'hostrealm_profile.c:71,13'
          Dst:             profile_release_string
        - Src:             'hostrealm_profile.c:64,57'
          Dst:             strchr
    - functionName:    hostrealm_profile_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_profile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    registry_free_realmlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_registry.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_free_host_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostrealm_registry.c:122,5'
          Dst:             krb5_free_host_realm
    - functionName:    registry_default_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_registry.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hostrealm_registry_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/hostrealm_registry.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_kdc_config_file
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - secure_getenv
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:346,12'
          Dst:             secure_getenv
        - Src:             'init_os_ctx.c:357,19'
          Dst:             strdup
    - functionName:    k5_os_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_free_preauth_context
        - krb5int_close_plugin_dirs
        - profile_abandon
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:500,9'
          Dst:             profile_abandon
        - Src:             'init_os_ctx.c:505,9'
          Dst:             k5_free_preauth_context
        - Src:             'init_os_ctx.c:508,5'
          Dst:             krb5int_close_plugin_dirs
    - functionName:    free_filespecs
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_free_config_files
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_filespecs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:482,5'
          Dst:             free_filespecs
    - functionName:    os_get_default_config_files
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          224
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - secure_getenv
        - strchr
        - strlen
        - strncpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:300,20'
          Dst:             secure_getenv
        - Src:             'init_os_ctx.c:316,33'
          Dst:             strchr
        - Src:             'init_os_ctx.c:316,57'
          Dst:             strlen
        - Src:             'init_os_ctx.c:325,9'
          Dst:             strncpy
    - functionName:    krb5_get_default_config_files
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - os_get_default_config_files
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:476,12'
          Dst:             os_get_default_config_files
    - functionName:    krb5_set_config_files
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - profile_abandon
        - profile_init_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:459,14'
          Dst:             profile_init_flags
        - Src:             'init_os_ctx.c:465,9'
          Dst:             profile_abandon
    - functionName:    krb5_get_profile
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - profile_copy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:450,12'
          Dst:             profile_copy
    - functionName:    os_init_paths
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          173
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - add_kdc_config_file
        - free_filespecs
        - os_get_default_config_files
        - profile_init
        - profile_init_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:380,14'
          Dst:             os_get_default_config_files
        - Src:             'init_os_ctx.c:383,18'
          Dst:             add_kdc_config_file
        - Src:             'init_os_ctx.c:386,18'
          Dst:             profile_init_flags
        - Src:             'init_os_ctx.c:391,22'
          Dst:             profile_init
        - Src:             'init_os_ctx.c:395,9'
          Dst:             free_filespecs
    - functionName:    k5_os_init_context
      functionSourceFile: '/src/krb5/src/lib/krb5/os/init_os_ctx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - os_init_paths
        - profile_copy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init_os_ctx.c:438,18'
          Dst:             profile_copy
        - Src:             'init_os_ctx.c:440,18'
          Dst:             os_init_paths
    - functionName:    k5_sync_disk_file
      functionSourceFile: '/src/krb5/src/lib/krb5/os/krbfileio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - fflush
        - fileno
        - fsync
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'krbfileio.c:91,5'
          Dst:             fflush
        - Src:             'krbfileio.c:93,15'
          Dst:             fileno
        - Src:             'krbfileio.c:93,9'
          Dst:             fsync
        - Src:             'krbfileio.c:94,16'
          Dst:             __errno_location
    - functionName:    fsync
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_create_secure_file
      functionSourceFile: '/src/krb5/src/lib/krb5/os/krbfileio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - close
        - open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'krbfileio.c:59,10'
          Dst:             open
        - Src:             'krbfileio.c:81,9'
          Dst:             close
        - Src:             'krbfileio.c:84,16'
          Dst:             __errno_location
    - functionName:    kt_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ktdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - k5_expand_path_tokens
        - profile_get_string
        - profile_release_string
        - secure_getenv
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ktdefname.c:42,21'
          Dst:             strdup
        - Src:             'ktdefname.c:45,23'
          Dst:             secure_getenv
        - Src:             'ktdefname.c:46,21'
          Dst:             strdup
        - Src:             'ktdefname.c:48,16'
          Dst:             profile_get_string
        - Src:             'ktdefname.c:51,15'
          Dst:             k5_expand_path_tokens
        - Src:             'ktdefname.c:52,9'
          Dst:             profile_release_string
        - Src:             'ktdefname.c:55,16'
          Dst:             k5_expand_path_tokens
    - functionName:    krb5_kt_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ktdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_strlcpy
        - kt_default_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ktdefname.c:87,11'
          Dst:             kt_default_name
        - Src:             'ktdefname.c:90,9'
          Dst:             krb5int_strlcpy
    - functionName:    k5_kt_client_default_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ktdefname.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5_expand_path_tokens
        - profile_get_string
        - profile_release_string
        - secure_getenv
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ktdefname.c:66,16'
          Dst:             secure_getenv
        - Src:             'ktdefname.c:67,21'
          Dst:             strdup
        - Src:             'ktdefname.c:69,16'
          Dst:             profile_get_string
        - Src:             'ktdefname.c:72,15'
          Dst:             k5_expand_path_tokens
        - Src:             'ktdefname.c:73,9'
          Dst:             profile_release_string
        - Src:             'ktdefname.c:76,16'
          Dst:             k5_expand_path_tokens
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_make_fulladdr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/mk_faddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          172
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - store_16_le
        - store_32_le
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_faddr.c:58,5'
          Dst:             store_16_le
        - Src:             'mk_faddr.c:62,5'
          Dst:             store_32_le
        - Src:             'mk_faddr.c:71,5'
          Dst:             store_16_le
        - Src:             'mk_faddr.c:75,5'
          Dst:             store_32_le
    - functionName:    make_addr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_addr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1165
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          127
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - make_addr
        - sa2sin
        - sa2sin6
      functionUses:    1
      BranchProfiles:
        - Branch String:   'localaddr.c:1169,5'
          Branch Sides:    []
      Callsites:
        - Src:             'localaddr.c:1173,31'
          Dst:             sa2sin
        - Src:             'localaddr.c:1172,19'
          Dst:             make_addr
        - Src:             'localaddr.c:1180,41'
          Dst:             sa2sin6
        - Src:             'localaddr.c:1182,13'
          Dst:             htonl
        - Src:             'localaddr.c:1182,13'
          Dst:             htonl
        - Src:             'localaddr.c:1185,19'
          Dst:             make_addr
    - functionName:    sa2sin
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa2sin6
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1121
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          97
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localaddr.c:1126,9'
          Dst:             realloc
    - functionName:    count_addrs
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'localaddr.c:1104,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    krb5_os_localaddr_profile
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1309
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         53
      ICount:          342
      EdgeCount:       69
      CyclomaticComplexity: 18
      functionsReached:
        - __ctype_b_loc
        - k5_os_hostaddr
        - profile_get_values
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localaddr.c:1241,11'
          Dst:             profile_get_values
        - Src:             'localaddr.c:1255,20'
          Dst:             __ctype_b_loc
        - Src:             'localaddr.c:1264,33'
          Dst:             __ctype_b_loc
        - Src:             'localaddr.c:1276,19'
          Dst:             k5_os_hostaddr
        - Src:             'localaddr.c:1292,26'
          Dst:             realloc
    - functionName:    get_localaddrs
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1319
      functionLinenumberEnd: 1405
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          156
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - add_addr
        - allocate
        - count_addrs
        - krb5_os_localaddr_profile
        - krb5int_foreach_localaddr
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localaddr.c:1325,15'
          Dst:             krb5_os_localaddr_profile
        - Src:             'localaddr.c:1327,9'
          Dst:             krb5int_foreach_localaddr
        - Src:             'localaddr.c:1327,9'
          Dst:             count_addrs
        - Src:             'localaddr.c:1327,9'
          Dst:             allocate
        - Src:             'localaddr.c:1327,9'
          Dst:             add_addr
        - Src:             'localaddr.c:1349,35'
          Dst:             realloc
    - functionName:    krb5int_foreach_localaddr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          263
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - addr_eq
        - freeifaddrs
        - getifaddrs
        - is_loopback_address
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localaddr.c:428,9'
          Dst:             getifaddrs
        - Src:             'localaddr.c:429,16'
          Dst:             __errno_location
        - Src:             'localaddr.c:448,13'
          Dst:             is_loopback_address
        - Src:             'localaddr.c:459,17'
          Dst:             addr_eq
        - Src:             'localaddr.c:479,5'
          Dst:             freeifaddrs
    - functionName:    getifaddrs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_loopback_address
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - sa2sin
        - sa2sin6
      functionUses:    1
      BranchProfiles:
        - Branch String:   'localaddr.c:182,5'
          Branch Sides:    []
      Callsites:
        - Src:             'localaddr.c:184,16'
          Dst:             sa2sin
        - Src:             'localaddr.c:184,47'
          Dst:             htonl
        - Src:             'localaddr.c:186,16'
          Dst:             sa2sin6
        - Src:             'localaddr.c:186,16'
          Dst:             htonl
    - functionName:    addr_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
        - sa2sin
        - sa2sin6
      functionUses:    1
      BranchProfiles:
        - Branch String:   'localaddr.c:242,5'
          Branch Sides:    []
      Callsites:
        - Src:             'localaddr.c:244,25'
          Dst:             sa2sin
        - Src:             'localaddr.c:244,48'
          Dst:             sa2sin
        - Src:             'localaddr.c:244,17'
          Dst:             memcmp
        - Src:             'localaddr.c:247,25'
          Dst:             sa2sin6
        - Src:             'localaddr.c:247,50'
          Dst:             sa2sin6
        - Src:             'localaddr.c:247,17'
          Dst:             memcmp
    - functionName:    freeifaddrs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_os_localaddr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_localaddrs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'localaddr.c:1314,12'
          Dst:             get_localaddrs
    - functionName:    find_typed_module
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:76,17'
          Dst:             strcmp
    - functionName:    parse_mapping_value
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5memdup0
        - strchr
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:240,9'
          Dst:             strchr
        - Src:             'localauth.c:242,16'
          Dst:             strdup
        - Src:             'localauth.c:247,16'
          Dst:             k5memdup0
        - Src:             'localauth.c:250,20'
          Dst:             strdup
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    an2ln_auth_to_local
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          192
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - an2ln
        - an2ln_default
        - find_typed_module
        - free_lname
        - krb5_get_default_realm
        - parse_mapping_value
        - profile_free_list
        - profile_get_values
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:313,11'
          Dst:             krb5_get_default_realm
        - Src:             'localauth.c:320,11'
          Dst:             profile_get_values
        - Src:             'localauth.c:323,15'
          Dst:             an2ln_default
        - Src:             'localauth.c:329,15'
          Dst:             parse_mapping_value
        - Src:             'localauth.c:332,13'
          Dst:             find_typed_module
        - Src:             'localauth.c:334,19'
          Dst:             an2ln
        - Src:             'localauth.c:336,30'
          Dst:             strdup
        - Src:             'localauth.c:339,17'
          Dst:             free_lname
        - Src:             'localauth.c:350,5'
          Dst:             profile_free_list
    - functionName:    an2ln_default
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          137
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - data_eq_string
        - k5memdup0
        - krb5_get_default_realm
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:273,11'
          Dst:             krb5_get_default_realm
        - Src:             'localauth.c:277,10'
          Dst:             data_eq_string
        - Src:             'localauth.c:281,14'
          Dst:             data_eq_string
        - Src:             'localauth.c:290,18'
          Dst:             k5memdup0
    - functionName:    an2ln
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_lname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq_string
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2231,25'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2232,40'
          Dst:             memcmp
    - functionName:    freestr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localauth_auth_to_local_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localauth_default_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_conflict
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - find_typed_module
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:93,20'
          Dst:             find_typed_module
        - Src:             'localauth.c:95,13'
          Dst:             krb5int_trace
    - functionName:    get_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached:
        - k5_plugin_load_all
        - k5_plugin_register
        - localauth_an2ln_initvt
        - localauth_auth_to_local_initvt
        - localauth_default_initvt
        - localauth_k5login_initvt
        - localauth_names_initvt
        - localauth_rule_initvt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:114,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:114,11'
          Dst:             localauth_default_initvt
        - Src:             'localauth.c:118,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:118,11'
          Dst:             localauth_rule_initvt
        - Src:             'localauth.c:121,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:121,11'
          Dst:             localauth_names_initvt
        - Src:             'localauth.c:124,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:124,11'
          Dst:             localauth_auth_to_local_initvt
        - Src:             'localauth.c:128,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:128,11'
          Dst:             localauth_k5login_initvt
        - Src:             'localauth.c:132,11'
          Dst:             k5_plugin_register
        - Src:             'localauth.c:132,11'
          Dst:             localauth_an2ln_initvt
        - Src:             'localauth.c:136,11'
          Dst:             k5_plugin_load_all
    - functionName:    free_handles
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_localauth_free_context
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_handles
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:441,5'
          Dst:             free_handles
    - functionName:    krb5_aname_to_localname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - an2ln
        - free_lname
        - krb5int_strlcpy
        - load_localauth_modules
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:418,15'
          Dst:             load_localauth_modules
        - Src:             'localauth.c:426,15'
          Dst:             an2ln
        - Src:             'localauth.c:428,18'
          Dst:             krb5int_strlcpy
        - Src:             'localauth.c:429,13'
          Dst:             free_lname
    - functionName:    load_localauth_modules
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          221
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - check_conflict
        - free_handles
        - get_modules
        - k5_plugin_free_modules
        - k5alloc
        - k5calloc
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:152,11'
          Dst:             get_modules
        - Src:             'localauth.c:158,12'
          Dst:             k5calloc
        - Src:             'localauth.c:165,18'
          Dst:             k5alloc
        - Src:             'localauth.c:170,13'
          Dst:             krb5int_trace
        - Src:             'localauth.c:175,13'
          Dst:             check_conflict
        - Src:             'localauth.c:182,17'
          Dst:             krb5int_trace
        - Src:             'localauth.c:197,5'
          Dst:             k5_plugin_free_modules
        - Src:             'localauth.c:198,5'
          Dst:             free_handles
    - functionName:    userok
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_kuserok
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - load_localauth_modules
        - userok
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth.c:393,47'
          Dst:             load_localauth_modules
        - Src:             'localauth.c:399,15'
          Dst:             userok
    - functionName:    an2ln_userok
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_an2ln.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_aname_to_localname
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_an2ln.c:46,11'
          Dst:             krb5_aname_to_localname
        - Src:             'localauth_an2ln.c:47,25'
          Dst:             strcmp
    - functionName:    localauth_an2ln_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_an2ln.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_k5login_filename
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_k5login.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - asprintf
        - profile_get_string
        - profile_release_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_k5login.c:59,11'
          Dst:             profile_get_string
        - Src:             'localauth_k5login.c:66,13'
          Dst:             asprintf
        - Src:             'localauth_k5login.c:70,13'
          Dst:             asprintf
        - Src:             'localauth_k5login.c:72,9'
          Dst:             profile_release_string
    - functionName:    userok_k5login
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_k5login.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          286
      EdgeCount:       71
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - access
        - fclose
        - fcntl
        - fgets
        - fileno
        - fopen
        - fstat
        - get_k5login_filename
        - getc
        - getpwnam_r
        - krb5_unparse_name
        - profile_get_boolean
        - strcmp
        - strrchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_k5login.c:94,11'
          Dst:             profile_get_boolean
        - Src:             'localauth_k5login.c:101,11'
          Dst:             getpwnam_r
        - Src:             'localauth_k5login.c:106,11'
          Dst:             get_k5login_filename
        - Src:             'localauth_k5login.c:110,9'
          Dst:             access
        - Src:             'localauth_k5login.c:115,11'
          Dst:             krb5_unparse_name
        - Src:             'localauth_k5login.c:119,10'
          Dst:             fopen
        - Src:             'localauth_k5login.c:121,15'
          Dst:             __errno_location
        - Src:             'localauth_k5login.c:124,5'
          Dst:             fileno
        - Src:             'localauth_k5login.c:124,5'
          Dst:             fcntl
        - Src:             'localauth_k5login.c:128,15'
          Dst:             fileno
        - Src:             'localauth_k5login.c:128,9'
          Dst:             fstat
        - Src:             'localauth_k5login.c:129,15'
          Dst:             __errno_location
        - Src:             'localauth_k5login.c:138,12'
          Dst:             fgets
        - Src:             'localauth_k5login.c:139,19'
          Dst:             strrchr
        - Src:             'localauth_k5login.c:142,13'
          Dst:             strcmp
        - Src:             'localauth_k5login.c:148,30'
          Dst:             getc
        - Src:             'localauth_k5login.c:158,9'
          Dst:             fclose
    - functionName:    access
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localauth_k5login_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_k5login.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freestr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    an2ln_names
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          135
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - krb5_get_default_realm
        - krb5_unparse_name_flags
        - profile_free_list
        - profile_get_values
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_names.c:55,11'
          Dst:             krb5_get_default_realm
        - Src:             'localauth_names.c:58,11'
          Dst:             krb5_unparse_name_flags
        - Src:             'localauth_names.c:67,11'
          Dst:             profile_get_values
        - Src:             'localauth_names.c:75,18'
          Dst:             strdup
        - Src:             'localauth_names.c:82,5'
          Dst:             profile_free_list
    - functionName:    localauth_names_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_names.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    do_replacement
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_add
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - regcomp
        - regexec
        - regfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_rule.c:119,9'
          Dst:             regcomp
        - Src:             'localauth_rule.c:121,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'localauth_rule.c:122,12'
          Dst:             regexec
        - Src:             'localauth_rule.c:123,9'
          Dst:             k5_buf_add_len
        - Src:             'localauth_rule.c:124,9'
          Dst:             k5_buf_add
        - Src:             'localauth_rule.c:129,5'
          Dst:             regfree
        - Src:             'localauth_rule.c:130,5'
          Dst:             k5_buf_add
        - Src:             'localauth_rule.c:131,15'
          Dst:             k5_buf_cstring
    - functionName:    regcomp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regexec
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regfree
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    aname_replacer
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          220
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - __ctype_b_loc
        - do_replacement
        - k5memdup0
        - strchr
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_rule.c:150,15'
          Dst:             strdup
        - Src:             'localauth_rule.c:158,16'
          Dst:             __ctype_b_loc
        - Src:             'localauth_rule.c:162,53'
          Dst:             strchr
        - Src:             'localauth_rule.c:163,21'
          Dst:             strchr
        - Src:             'localauth_rule.c:170,16'
          Dst:             k5memdup0
        - Src:             'localauth_rule.c:174,16'
          Dst:             k5memdup0
        - Src:             'localauth_rule.c:184,15'
          Dst:             do_replacement
    - functionName:    aname_do_match
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - k5memdup0
        - regcomp
        - regexec
        - regfree
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_rule.c:90,12'
          Dst:             strchr
        - Src:             'localauth_rule.c:93,14'
          Dst:             k5memdup0
        - Src:             'localauth_rule.c:98,12'
          Dst:             regcomp
        - Src:             'localauth_rule.c:99,12'
          Dst:             regexec
        - Src:             'localauth_rule.c:100,47'
          Dst:             strlen
        - Src:             'localauth_rule.c:102,5'
          Dst:             regfree
    - functionName:    aname_get_selstring
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          215
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_init_dynamic
        - krb5_unparse_name_flags
        - strcspn
        - strtol
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_rule.c:223,16'
          Dst:             krb5_unparse_name_flags
        - Src:             'localauth_rule.c:230,5'
          Dst:             __errno_location
        - Src:             'localauth_rule.c:231,17'
          Dst:             strtol
        - Src:             'localauth_rule.c:232,9'
          Dst:             __errno_location
        - Src:             'localauth_rule.c:239,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'localauth_rule.c:242,16'
          Dst:             strcspn
        - Src:             'localauth_rule.c:243,9'
          Dst:             k5_buf_add_len
        - Src:             'localauth_rule.c:249,9'
          Dst:             __errno_location
        - Src:             'localauth_rule.c:250,15'
          Dst:             strtol
        - Src:             'localauth_rule.c:251,13'
          Dst:             __errno_location
        - Src:             'localauth_rule.c:255,9'
          Dst:             k5_buf_add_len
        - Src:             'localauth_rule.c:260,9'
          Dst:             k5_buf_free
        - Src:             'localauth_rule.c:264,22'
          Dst:             k5_buf_cstring
    - functionName:    freestr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    an2ln_rule
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          90
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - aname_do_match
        - aname_get_selstring
        - aname_replacer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'localauth_rule.c:285,11'
          Dst:             aname_get_selstring
        - Src:             'localauth_rule.c:291,15'
          Dst:             aname_do_match
        - Src:             'localauth_rule.c:297,11'
          Dst:             aname_replacer
    - functionName:    localauth_rule_initvt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/localauth_rule.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    server_list_contains
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          144
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - memcmp
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:244,13'
          Dst:             strcmp
        - Src:             'locate_kdc.c:248,13'
          Dst:             memcmp
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    mark_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - server_list_contains
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:942,27'
          Dst:             server_list_contains
    - functionName:    locate_srv_dns_1
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - add_host_to_list
        - get_sitename
        - krb5int_free_srv_dns_data
        - krb5int_make_srv_query_realm
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:367,12'
          Dst:             get_sitename
        - Src:             'locate_kdc.c:370,12'
          Dst:             krb5int_make_srv_query_realm
        - Src:             'locate_kdc.c:386,22'
          Dst:             strcmp
        - Src:             'locate_kdc.c:387,16'
          Dst:             add_host_to_list
        - Src:             'locate_kdc.c:394,5'
          Dst:             krb5int_free_srv_dns_data
    - functionName:    get_sitename
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5memdup0
        - profile_get_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:108,16'
          Dst:             k5memdup0
        - Src:             'locate_kdc.c:111,11'
          Dst:             profile_get_string
    - functionName:    add_host_to_list
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - new_server_entry
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:193,13'
          Dst:             new_server_entry
        - Src:             'locate_kdc.c:198,23'
          Dst:             strdup
        - Src:             'locate_kdc.c:202,27'
          Dst:             strdup
    - functionName:    new_server_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:155,18'
          Dst:             realloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    parse_uri_fields
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          201
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:602,9'
          Dst:             strncasecmp
        - Src:             'locate_kdc.c:623,9'
          Dst:             strncasecmp
        - Src:             'locate_kdc.c:626,16'
          Dst:             strncasecmp
        - Src:             'locate_kdc.c:629,16'
          Dst:             strncasecmp
    - functionName:    locate_uri
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          209
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - add_host_to_list
        - get_sitename
        - k5_make_uri_query
        - k5_parse_host_string
        - krb5int_free_srv_dns_data
        - parse_uri_fields
        - parse_uri_if_https
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:663,11'
          Dst:             get_sitename
        - Src:             'locate_kdc.c:666,11'
          Dst:             k5_make_uri_query
        - Src:             'locate_kdc.c:675,9'
          Dst:             parse_uri_fields
        - Src:             'locate_kdc.c:688,13'
          Dst:             parse_uri_if_https
        - Src:             'locate_kdc.c:693,15'
          Dst:             k5_parse_host_string
        - Src:             'locate_kdc.c:702,15'
          Dst:             add_host_to_list
        - Src:             'locate_kdc.c:709,5'
          Dst:             krb5int_free_srv_dns_data
    - functionName:    parse_uri_if_https
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:222,9'
          Dst:             strncmp
        - Src:             'locate_kdc.c:226,14'
          Dst:             strchr
    - functionName:    use_dns_uri
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - profile_get_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:81,11'
          Dst:             profile_get_boolean
    - functionName:    locate_srv_conf_1
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          283
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - Tprintf
        - add_addr_to_list
        - add_host_to_list
        - error_message
        - k5_parse_host_string
        - k5memdup0
        - krb5int_strlcpy
        - parse_uri_if_https
        - profile_free_list
        - profile_get_values
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:265,5'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:268,16'
          Dst:             k5memdup0
        - Src:             'locate_kdc.c:276,12'
          Dst:             profile_get_values
        - Src:             'locate_kdc.c:277,37'
          Dst:             strcmp
        - Src:             'locate_kdc.c:279,16'
          Dst:             profile_get_values
        - Src:             'locate_kdc.c:283,52'
          Dst:             error_message
        - Src:             'locate_kdc.c:283,9'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:295,9'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:302,17'
          Dst:             krb5int_strlcpy
        - Src:             'locate_kdc.c:307,20'
          Dst:             add_addr_to_list
        - Src:             'locate_kdc.c:315,9'
          Dst:             parse_uri_if_https
        - Src:             'locate_kdc.c:318,16'
          Dst:             k5_parse_host_string
        - Src:             'locate_kdc.c:324,16'
          Dst:             add_host_to_list
        - Src:             'locate_kdc.c:336,5'
          Dst:             profile_free_list
    - functionName:    Tprintf
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_addr_to_list
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - new_server_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:172,13'
          Dst:             new_server_entry
    - functionName:    module_callback
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - add_addr_to_list
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:430,9'
          Dst:             add_addr_to_list
    - functionName:    dns_locate_server_srv
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          172
      EdgeCount:       42
      CyclomaticComplexity: 9
      functionsReached:
        - _krb5_use_dns_kdc
        - krb5int_trace
        - locate_srv_dns_1
      functionUses:    1
      BranchProfiles:
        - Branch String:   'locate_kdc.c:767,5'
          Branch Sides:    []
      Callsites:
        - Src:             'locate_kdc.c:761,19'
          Dst:             _krb5_use_dns_kdc
        - Src:             'locate_kdc.c:789,16'
          Dst:             locate_srv_dns_1
        - Src:             'locate_kdc.c:792,16'
          Dst:             locate_srv_dns_1
        - Src:             'locate_kdc.c:795,9'
          Dst:             krb5int_trace
    - functionName:    _krb5_use_dns_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - maybe_use_dns
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:90,12'
          Dst:             maybe_use_dns
    - functionName:    maybe_use_dns
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - _krb5_conf_boolean
        - profile_get_string
        - profile_release_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:58,12'
          Dst:             profile_get_string
        - Src:             'locate_kdc.c:61,16'
          Dst:             profile_get_string
        - Src:             'locate_kdc.c:70,15'
          Dst:             _krb5_conf_boolean
        - Src:             'locate_kdc.c:71,5'
          Dst:             profile_release_string
    - functionName:    dns_locate_server_uri
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          124
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - _krb5_use_dns_kdc
        - krb5int_trace
        - locate_uri
        - use_dns_uri
      functionUses:    1
      BranchProfiles:
        - Branch String:   'locate_kdc.c:726,5'
          Branch Sides:    []
      Callsites:
        - Src:             'locate_kdc.c:723,10'
          Dst:             _krb5_use_dns_kdc
        - Src:             'locate_kdc.c:723,41'
          Dst:             use_dns_uri
        - Src:             'locate_kdc.c:746,11'
          Dst:             locate_uri
        - Src:             'locate_kdc.c:750,9'
          Dst:             krb5int_trace
    - functionName:    prof_locate_server
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - getservbyname
        - locate_srv_conf_1
      functionUses:    1
      BranchProfiles:
        - Branch String:   'locate_kdc.c:547,5'
          Branch Sides:    []
      Callsites:
        - Src:             'locate_kdc.c:564,16'
          Dst:             getservbyname
        - Src:             'locate_kdc.c:575,12'
          Dst:             locate_srv_conf_1
    - functionName:    getservbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    module_locate_server
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          301
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - Tprintf
        - error_message
        - k5memdup0
        - krb5_free_error_message
        - krb5_get_error_message
        - krb5int_free_plugin_dir_data
        - krb5int_get_plugin_dir_data
        - krb5int_open_plugin_dirs
        - module_callback
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:454,5'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:458,16'
          Dst:             krb5int_open_plugin_dirs
        - Src:             'locate_kdc.c:464,12'
          Dst:             krb5int_get_plugin_dir_data
        - Src:             'locate_kdc.c:468,24'
          Dst:             krb5_get_error_message
        - Src:             'locate_kdc.c:467,9'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:469,9'
          Dst:             krb5_free_error_message
        - Src:             'locate_kdc.c:474,9'
          Dst:             krb5int_free_plugin_dir_data
        - Src:             'locate_kdc.c:477,14'
          Dst:             k5memdup0
        - Src:             'locate_kdc.c:479,9'
          Dst:             krb5int_free_plugin_dir_data
        - Src:             'locate_kdc.c:486,9'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:495,16'
          Dst:             module_callback
        - Src:             'locate_kdc.c:499,20'
          Dst:             module_callback
        - Src:             'locate_kdc.c:508,13'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:515,27'
          Dst:             error_message
        - Src:             'locate_kdc.c:514,13'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:517,13'
          Dst:             krb5int_free_plugin_dir_data
        - Src:             'locate_kdc.c:523,9'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:525,9'
          Dst:             krb5int_free_plugin_dir_data
        - Src:             'locate_kdc.c:528,5'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:531,5'
          Dst:             Tprintf
        - Src:             'locate_kdc.c:534,5'
          Dst:             krb5int_free_plugin_dir_data
    - functionName:    k5_kdclist_free
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1026
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mark_matching_servers
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 968
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          135
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - data_eq
        - mark_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:955,9'
          Dst:             mark_entry
        - Src:             'locate_kdc.c:962,14'
          Dst:             data_eq
        - Src:             'locate_kdc.c:964,13'
          Dst:             mark_entry
    - functionName:    k5_kdclist_any_replicas
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 974
      functionLinenumberEnd: 1010
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          123
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_free_serverlist
        - locate_server
        - mark_matching_servers
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:995,13'
          Dst:             locate_server
        - Src:             'locate_kdc.c:1002,17'
          Dst:             mark_matching_servers
        - Src:             'locate_kdc.c:1004,9'
          Dst:             k5_free_serverlist
    - functionName:    locate_server
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dns_locate_server_srv
        - dns_locate_server_uri
        - k5_free_serverlist
        - module_locate_server
        - prof_locate_server
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:819,11'
          Dst:             module_locate_server
        - Src:             'locate_kdc.c:824,11'
          Dst:             prof_locate_server
        - Src:             'locate_kdc.c:830,15'
          Dst:             dns_locate_server_uri
        - Src:             'locate_kdc.c:836,15'
          Dst:             dns_locate_server_srv
        - Src:             'locate_kdc.c:841,9'
          Dst:             k5_free_serverlist
    - functionName:    k5_free_serverlist
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_kdclist_add
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          83
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_copy_data_contents
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:914,14'
          Dst:             realloc
        - Src:             'locate_kdc.c:919,11'
          Dst:             krb5int_copy_data_contents
    - functionName:    k5_kdclist_create
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 905
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_locate_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_locate_server
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:889,12'
          Dst:             k5_locate_server
    - functionName:    k5_locate_server
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 879
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - k5_free_serverlist
        - krb5_set_error_message
        - locate_server
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:862,9'
          Dst:             krb5_set_error_message
        - Src:             'locate_kdc.c:867,11'
          Dst:             locate_server
        - Src:             'locate_kdc.c:872,9'
          Dst:             k5_free_serverlist
        - Src:             'locate_kdc.c:874,19'
          Dst:             dgettext
        - Src:             'locate_kdc.c:873,9'
          Dst:             krb5_set_error_message
    - functionName:    _krb5_use_dns_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/locate_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - maybe_use_dns
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'locate_kdc.c:97,12'
          Dst:             maybe_use_dns
    - functionName:    ofdlock
      functionSourceFile: '/src/krb5/src/lib/krb5/os/lock_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - __errno_location
        - fcntl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lock_file.c:96,5'
          Dst:             __assert_fail
        - Src:             'lock_file.c:98,10'
          Dst:             fcntl
        - Src:             'lock_file.c:99,20'
          Dst:             __errno_location
        - Src:             'lock_file.c:102,12'
          Dst:             fcntl
    - functionName:    krb5_lock_file
      functionSourceFile: '/src/krb5/src/lib/krb5/os/lock_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          156
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - flock
        - ofdlock
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lock_file.c:117,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lock_file.c:154,9'
          Dst:             ofdlock
        - Src:             'lock_file.c:155,13'
          Dst:             __errno_location
        - Src:             'lock_file.c:155,32'
          Dst:             __errno_location
        - Src:             'lock_file.c:158,13'
          Dst:             __errno_location
        - Src:             'lock_file.c:159,20'
          Dst:             __errno_location
        - Src:             'lock_file.c:160,18'
          Dst:             __errno_location
        - Src:             'lock_file.c:166,9'
          Dst:             flock
        - Src:             'lock_file.c:167,18'
          Dst:             __errno_location
    - functionName:    flock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_net_read
      functionSourceFile: '/src/krb5/src/lib/krb5/os/net_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          97
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - read
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'net_read.c:45,14'
          Dst:             read
        - Src:             'net_read.c:47,17'
          Dst:             __errno_location
        - Src:             'net_read.c:51,21'
          Dst:             __errno_location
        - Src:             'net_read.c:51,13'
          Dst:             __errno_location
    - functionName:    socket_sendmsg
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/port-sockets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/port-sockets.h:263,12'
          Dst:             sendmsg
    - functionName:    sendmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_net_writev
      functionSourceFile: '/src/krb5/src/lib/krb5/os/net_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          185
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - __errno_location
        - abort
        - socket_sendmsg
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'net_write.c:59,14'
          Dst:             socket_sendmsg
        - Src:             'net_write.c:61,17'
          Dst:             __errno_location
        - Src:             'net_write.c:65,21'
          Dst:             __errno_location
        - Src:             'net_write.c:65,13'
          Dst:             __errno_location
        - Src:             'net_write.c:71,17'
          Dst:             abort
        - Src:             'net_write.c:76,17'
          Dst:             __assert_fail
    - functionName:    krb5_net_write
      functionSourceFile: '/src/krb5/src/lib/krb5/os/net_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_net_writev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'net_write.c:44,12'
          Dst:             krb5int_net_writev
    - functionName:    intrfunc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restore_signals
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sigaction
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prompter.c:152,5'
          Dst:             sigaction
    - functionName:    sigaction
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    catch_signals
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sigaction
        - sigemptyset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prompter.c:139,5'
          Dst:             sigemptyset
        - Src:             'prompter.c:142,5'
          Dst:             sigaction
    - functionName:    sigemptyset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_prompt_types
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_set_prompt_types
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restore_tty
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fileno
        - isatty
        - restore_signals
        - tcsetattr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prompter.c:197,10'
          Dst:             fileno
        - Src:             'prompter.c:198,9'
          Dst:             isatty
        - Src:             'prompter.c:199,15'
          Dst:             tcsetattr
        - Src:             'prompter.c:205,5'
          Dst:             restore_signals
    - functionName:    isatty
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tcsetattr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setup_tty
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - catch_signals
        - fileno
        - isatty
        - restore_signals
        - tcgetattr
        - tcsetattr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prompter.c:166,5'
          Dst:             catch_signals
        - Src:             'prompter.c:167,10'
          Dst:             fileno
        - Src:             'prompter.c:169,14'
          Dst:             isatty
        - Src:             'prompter.c:173,13'
          Dst:             tcgetattr
        - Src:             'prompter.c:181,13'
          Dst:             tcsetattr
        - Src:             'prompter.c:187,9'
          Dst:             restore_signals
    - functionName:    tcgetattr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_prompter_posix
      functionSourceFile: '/src/krb5/src/lib/krb5/os/prompter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          345
      EdgeCount:       69
      CyclomaticComplexity: 19
      functionsReached:
        - close
        - dup
        - fclose
        - fcntl
        - fdopen
        - fflush
        - fgets
        - fputs
        - getc
        - putchar
        - restore_tty
        - setup_tty
        - setvbuf
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prompter.c:50,9'
          Dst:             fputs
        - Src:             'prompter.c:51,9'
          Dst:             fputs
        - Src:             'prompter.c:54,9'
          Dst:             fputs
        - Src:             'prompter.c:55,9'
          Dst:             fputs
        - Src:             'prompter.c:62,10'
          Dst:             dup
        - Src:             'prompter.c:65,5'
          Dst:             fcntl
        - Src:             'prompter.c:66,10'
          Dst:             fdopen
        - Src:             'prompter.c:69,9'
          Dst:             setvbuf
        - Src:             'prompter.c:78,19'
          Dst:             setup_tty
        - Src:             'prompter.c:83,15'
          Dst:             fputs
        - Src:             'prompter.c:84,15'
          Dst:             fputs
        - Src:             'prompter.c:85,15'
          Dst:             fflush
        - Src:             'prompter.c:89,16'
          Dst:             fgets
        - Src:             'prompter.c:92,13'
          Dst:             putchar
        - Src:             'prompter.c:98,13'
          Dst:             restore_tty
        - Src:             'prompter.c:103,16'
          Dst:             strchr
        - Src:             'prompter.c:109,31'
          Dst:             getc
        - Src:             'prompter.c:113,19'
          Dst:             restore_tty
        - Src:             'prompter.c:116,36'
          Dst:             strlen
        - Src:             'prompter.c:120,9'
          Dst:             fclose
        - Src:             'prompter.c:122,9'
          Dst:             close
    - functionName:    fputs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setvbuf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    putchar
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    service_dispatch
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          126
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - abort
        - kill_conn
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sendto_kdc.c:1083,5'
          Branch Sides:    []
      Callsites:
        - Src:             'sendto_kdc.c:1079,9'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1085,9'
          Dst:             __assert_fail
        - Src:             'sendto_kdc.c:1088,9'
          Dst:             __assert_fail
        - Src:             'sendto_kdc.c:1091,9'
          Dst:             __assert_fail
        - Src:             'sendto_kdc.c:1094,9'
          Dst:             abort
    - functionName:    kill_conn
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - close
        - cm_remove_fd
        - free_http_tls_data
        - krb5int_trace
        - socktype_for_transport
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1042,5'
          Dst:             free_http_tls_data
        - Src:             'sendto_kdc.c:1044,9'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:1045,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1046,5'
          Dst:             cm_remove_fd
        - Src:             'sendto_kdc.c:1048,5'
          Dst:             close
    - functionName:    free_http_tls_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socktype_for_transport
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'sendto_kdc.c:383,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    cm_remove_fd
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_pollfd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:232,26'
          Dst:             find_pollfd
    - functionName:    find_pollfd
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:209,5'
          Dst:             abort
    - functionName:    cm_get_ssflags
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_pollfd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:256,26'
          Dst:             find_pollfd
    - functionName:    cm_select_or_poll
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - get_curtime_ms
        - poll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:352,18'
          Dst:             get_curtime_ms
        - Src:             'sendto_kdc.c:365,13'
          Dst:             poll
        - Src:             'sendto_kdc.c:377,26'
          Dst:             __errno_location
    - functionName:    get_curtime_ms
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - gettimeofday
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:181,9'
          Dst:             gettimeofday
        - Src:             'sendto_kdc.c:182,16'
          Dst:             __errno_location
    - functionName:    poll
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    any_tcp_connections
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1390
      functionLinenumberEnd: 1399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    make_proxy_request
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          153
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - alloc_data
        - encode_krb5_kkdcp_message
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_init_dynamic
        - k5_buf_status
        - krb5_free_data
        - krb5_free_data_contents
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:622,11'
          Dst:             alloc_data
        - Src:             'sendto_kdc.c:625,5'
          Dst:             store_32_be
        - Src:             'sendto_kdc.c:628,11'
          Dst:             encode_krb5_kkdcp_message
        - Src:             'sendto_kdc.c:633,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'sendto_kdc.c:635,5'
          Dst:             k5_buf_add_fmt
        - Src:             'sendto_kdc.c:636,5'
          Dst:             k5_buf_add_fmt
        - Src:             'sendto_kdc.c:638,5'
          Dst:             k5_buf_add
        - Src:             'sendto_kdc.c:639,5'
          Dst:             k5_buf_add
        - Src:             'sendto_kdc.c:640,5'
          Dst:             k5_buf_add
        - Src:             'sendto_kdc.c:641,5'
          Dst:             k5_buf_add
        - Src:             'sendto_kdc.c:642,5'
          Dst:             k5_buf_add_fmt
        - Src:             'sendto_kdc.c:643,5'
          Dst:             k5_buf_add_len
        - Src:             'sendto_kdc.c:644,9'
          Dst:             k5_buf_status
        - Src:             'sendto_kdc.c:653,5'
          Dst:             krb5_free_data_contents
        - Src:             'sendto_kdc.c:654,5'
          Dst:             krb5_free_data
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cm_add_fd
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          50
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_transport_message
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          212
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - make_proxy_request
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:673,9'
          Dst:             store_32_be
        - Src:             'sendto_kdc.c:679,15'
          Dst:             make_proxy_request
    - functionName:    socket_connect
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/port-sockets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/port-sockets.h:232,10'
          Dst:             connect
    - functionName:    start_connection
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 990
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          419
      EdgeCount:       80
      CyclomaticComplexity: 20
      functionsReached:
        - __errno_location
        - close
        - cm_add_fd
        - cm_read
        - cm_write
        - fcntl
        - ioctl
        - krb5int_trace
        - send
        - set_transport_message
        - setsockopt
        - socket
        - socket_connect
        - socktype_for_transport
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:894,12'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:895,10'
          Dst:             socket
        - Src:             'sendto_kdc.c:898,5'
          Dst:             fcntl
        - Src:             'sendto_kdc.c:900,5'
          Dst:             ioctl
        - Src:             'sendto_kdc.c:902,9'
          Dst:             setsockopt
        - Src:             'sendto_kdc.c:903,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:907,9'
          Dst:             socket_connect
        - Src:             'sendto_kdc.c:914,13'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:914,44'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:918,20'
          Dst:             close
        - Src:             'sendto_kdc.c:941,20'
          Dst:             close
        - Src:             'sendto_kdc.c:950,9'
          Dst:             set_transport_message
        - Src:             'sendto_kdc.c:952,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:953,16'
          Dst:             close
        - Src:             'sendto_kdc.c:964,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:965,15'
          Dst:             send
        - Src:             'sendto_kdc.c:967,13'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:967,13'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:969,20'
          Dst:             close
        - Src:             'sendto_kdc.c:978,10'
          Dst:             cm_add_fd
        - Src:             'sendto_kdc.c:979,16'
          Dst:             close
        - Src:             'sendto_kdc.c:985,9'
          Dst:             cm_write
        - Src:             'sendto_kdc.c:987,9'
          Dst:             cm_read
    - functionName:    ioctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cm_write
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_pollfd
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:249,5'
          Dst:             find_pollfd
    - functionName:    cm_read
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_pollfd
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:242,5'
          Dst:             find_pollfd
    - functionName:    https_read_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1339
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          243
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - cm_read
        - cm_write
        - kill_conn
        - krb5int_trace
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1306,17'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1309,19'
          Dst:             realloc
        - Src:             'sendto_kdc.c:1311,17'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1331,9'
          Dst:             cm_read
        - Src:             'sendto_kdc.c:1333,9'
          Dst:             cm_write
        - Src:             'sendto_kdc.c:1335,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1336,9'
          Dst:             kill_conn
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    init_tls_vtable
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - k5_plugin_load
        - k5_plugin_register_dyn
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:158,20'
          Dst:             calloc
        - Src:             'sendto_kdc.c:163,5'
          Dst:             k5_plugin_register_dyn
        - Src:             'sendto_kdc.c:164,11'
          Dst:             k5_plugin_load
        - Src:             'sendto_kdc.c:168,9'
          Dst:             krb5int_trace
    - functionName:    setup_tls
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1223
      functionLinenumberEnd: 1257
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          162
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - init_tls_vtable
        - k5memdup0
        - krb5int_trace
        - profile_free_list
        - profile_get_values
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1229,9'
          Dst:             init_tls_vtable
        - Src:             'sendto_kdc.c:1232,16'
          Dst:             k5memdup0
        - Src:             'sendto_kdc.c:1241,11'
          Dst:             profile_get_values
        - Src:             'sendto_kdc.c:1247,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1255,5'
          Dst:             profile_free_list
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    socket_sendmsg
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/port-sockets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/port-sockets.h:263,12'
          Dst:             sendmsg
    - functionName:    get_so_error
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - getsockopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1062,9'
          Dst:             getsockopt
        - Src:             'sendto_kdc.c:1065,13'
          Dst:             __errno_location
    - functionName:    getsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    service_udp_read
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - kill_conn
        - krb5int_trace
        - recv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1209,13'
          Dst:             recv
        - Src:             'sendto_kdc.c:1211,9'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:1211,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1212,9'
          Dst:             kill_conn
    - functionName:    recv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    service_https_read
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1345
      functionLinenumberEnd: 1385
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          179
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - decode_krb5_kkdcp_message
        - https_read_bytes
        - k5_free_kkdcp_message
        - kill_conn
        - krb5int_trace
        - load_32_be
        - make_data
        - strstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1352,10'
          Dst:             https_read_bytes
        - Src:             'sendto_kdc.c:1356,11'
          Dst:             strstr
        - Src:             'sendto_kdc.c:1362,11'
          Dst:             make_data
        - Src:             'sendto_kdc.c:1363,9'
          Dst:             decode_krb5_kkdcp_message
        - Src:             'sendto_kdc.c:1369,9'
          Dst:             load_32_be
        - Src:             'sendto_kdc.c:1376,5'
          Dst:             k5_free_kkdcp_message
        - Src:             'sendto_kdc.c:1381,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1382,5'
          Dst:             k5_free_kkdcp_message
        - Src:             'sendto_kdc.c:1383,5'
          Dst:             kill_conn
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    service_https_write
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1263
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          182
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - cm_read
        - cm_write
        - kill_conn
        - krb5int_trace
        - setup_tls
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1267,36'
          Dst:             setup_tls
        - Src:             'sendto_kdc.c:1268,9'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1276,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1277,9'
          Dst:             cm_read
        - Src:             'sendto_kdc.c:1280,9'
          Dst:             cm_read
        - Src:             'sendto_kdc.c:1282,9'
          Dst:             cm_write
        - Src:             'sendto_kdc.c:1284,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1285,9'
          Dst:             kill_conn
    - functionName:    service_tcp_read
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1200
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          262
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - kill_conn
        - krb5int_trace
        - load_32_be
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1161,17'
          Dst:             read
        - Src:             'sendto_kdc.c:1163,25'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:1164,13'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1165,13'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1174,17'
          Dst:             read
        - Src:             'sendto_kdc.c:1177,25'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:1178,13'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1179,13'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1184,33'
          Dst:             load_32_be
        - Src:             'sendto_kdc.c:1187,17'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1194,17'
          Dst:             kill_conn
    - functionName:    service_tcp_write
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          195
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - abort
        - cm_read
        - kill_conn
        - krb5int_trace
        - socket_sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1124,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1125,16'
          Dst:             socket_sendmsg
        - Src:             'sendto_kdc.c:1127,9'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:1127,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1128,9'
          Dst:             kill_conn
        - Src:             'sendto_kdc.c:1134,13'
          Dst:             abort
        - Src:             'sendto_kdc.c:1144,9'
          Dst:             cm_read
    - functionName:    service_tcp_connect
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - get_so_error
        - kill_conn
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1104,13'
          Dst:             get_so_error
        - Src:             'sendto_kdc.c:1107,9'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1108,9'
          Dst:             kill_conn
    - functionName:    translate_ai_error
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 794
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          83
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - __errno_location
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sendto_kdc.c:755,5'
          Branch Sides:    []
      Callsites:
        - Src:             'sendto_kdc.c:788,16'
          Dst:             __errno_location
    - functionName:    add_connection
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          256
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - calloc
        - krb5int_strlcpy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:704,13'
          Dst:             calloc
        - Src:             'sendto_kdc.c:722,9'
          Dst:             __assert_fail
        - Src:             'sendto_kdc.c:728,9'
          Dst:             krb5int_strlcpy
    - functionName:    ss2sa
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    service_fds
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1407
      functionLinenumberEnd: 1471
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          307
      EdgeCount:       76
      CyclomaticComplexity: 22
      functionsReached:
        - any_tcp_connections
        - cm_get_ssflags
        - cm_select_or_poll
        - get_curtime_ms
        - kill_conn
        - make_data
        - service_dispatch
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1414,9'
          Dst:             get_curtime_ms
        - Src:             'sendto_kdc.c:1421,19'
          Dst:             any_tcp_connections
        - Src:             'sendto_kdc.c:1425,13'
          Dst:             cm_select_or_poll
        - Src:             'sendto_kdc.c:1433,29'
          Dst:             get_curtime_ms
        - Src:             'sendto_kdc.c:1445,23'
          Dst:             cm_get_ssflags
        - Src:             'sendto_kdc.c:1449,17'
          Dst:             service_dispatch
        - Src:             'sendto_kdc.c:1453,39'
          Dst:             make_data
        - Src:             'sendto_kdc.c:1456,25'
          Dst:             kill_conn
    - functionName:    maybe_send
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          156
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - krb5int_trace
        - send
        - start_connection
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1006,16'
          Dst:             start_connection
        - Src:             'sendto_kdc.c:1023,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1024,11'
          Dst:             send
        - Src:             'sendto_kdc.c:1026,9'
          Dst:             __errno_location
        - Src:             'sendto_kdc.c:1026,9'
          Dst:             krb5int_trace
    - functionName:    resolve_server
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          440
      EdgeCount:       88
      CyclomaticComplexity: 24
      functionsReached:
        - add_connection
        - krb5int_freeaddrinfo
        - krb5int_getaddrinfo
        - krb5int_trace
        - snprintf
        - socktype_for_transport
        - ss2sa
        - translate_ai_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:837,26'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:840,22'
          Dst:             ss2sa
        - Src:             'sendto_kdc.c:841,16'
          Dst:             add_connection
        - Src:             'sendto_kdc.c:847,24'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:852,14'
          Dst:             snprintf
        - Src:             'sendto_kdc.c:855,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:856,11'
          Dst:             krb5int_getaddrinfo
        - Src:             'sendto_kdc.c:858,16'
          Dst:             translate_ai_error
        - Src:             'sendto_kdc.c:863,18'
          Dst:             add_connection
        - Src:             'sendto_kdc.c:874,30'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:875,22'
          Dst:             add_connection
        - Src:             'sendto_kdc.c:880,5'
          Dst:             krb5int_freeaddrinfo
    - functionName:    cm_init_selstate
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_sendto_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_sendto_kdc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:572,12'
          Dst:             k5_sendto_kdc
    - functionName:    k5_sendto_kdc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          415
      EdgeCount:       89
      CyclomaticComplexity: 24
      functionsReached:
        - __assert_fail
        - check_for_svc_unavailable
        - dgettext
        - empty_data
        - k5_free_serverlist
        - k5_kdclist_add
        - k5_locate_kdc
        - k5_sendto
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_set_error_message
        - krb5int_trace
        - profile_get_integer
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:455,23'
          Dst:             empty_data
        - Src:             'sendto_kdc.c:457,18'
          Dst:             empty_data
        - Src:             'sendto_kdc.c:472,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:476,18'
          Dst:             profile_get_integer
        - Src:             'sendto_kdc.c:498,14'
          Dst:             k5_locate_kdc
        - Src:             'sendto_kdc.c:520,14'
          Dst:             k5_sendto
        - Src:             'sendto_kdc.c:520,14'
          Dst:             check_for_svc_unavailable
        - Src:             'sendto_kdc.c:528,23'
          Dst:             dgettext
        - Src:             'sendto_kdc.c:527,13'
          Dst:             krb5_set_error_message
        - Src:             'sendto_kdc.c:541,13'
          Dst:             __assert_fail
        - Src:             'sendto_kdc.c:554,13'
          Dst:             empty_data
        - Src:             'sendto_kdc.c:558,18'
          Dst:             k5_kdclist_add
        - Src:             'sendto_kdc.c:561,5'
          Dst:             krb5_free_data
        - Src:             'sendto_kdc.c:562,5'
          Dst:             krb5_free_data_contents
        - Src:             'sendto_kdc.c:563,5'
          Dst:             k5_free_serverlist
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    check_for_svc_unavailable
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - decode_krb5_error
        - krb5_free_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:407,13'
          Dst:             decode_krb5_error
        - Src:             'sendto_kdc.c:409,13'
          Dst:             krb5_free_error
    - functionName:    k5_sendto
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1508
      functionLinenumberEnd: 1638
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          728
      EdgeCount:       160
      CyclomaticComplexity: 41
      functionsReached:
        - close
        - cm_init_selstate
        - empty_data
        - free_http_tls_data
        - get_curtime_ms
        - getpeername
        - krb5int_trace
        - make_data
        - maybe_send
        - resolve_server
        - service_fds
        - socktype_for_transport
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sendto_kdc.c:1518,14'
          Dst:             empty_data
        - Src:             'sendto_kdc.c:1521,18'
          Dst:             get_curtime_ms
        - Src:             'sendto_kdc.c:1535,5'
          Dst:             cm_init_selstate
        - Src:             'sendto_kdc.c:1542,18'
          Dst:             resolve_server
        - Src:             'sendto_kdc.c:1551,17'
          Dst:             maybe_send
        - Src:             'sendto_kdc.c:1554,20'
          Dst:             service_fds
        - Src:             'sendto_kdc.c:1565,13'
          Dst:             maybe_send
        - Src:             'sendto_kdc.c:1568,16'
          Dst:             service_fds
        - Src:             'sendto_kdc.c:1574,16'
          Dst:             service_fds
        - Src:             'sendto_kdc.c:1582,17'
          Dst:             maybe_send
        - Src:             'sendto_kdc.c:1585,20'
          Dst:             service_fds
        - Src:             'sendto_kdc.c:1593,20'
          Dst:             service_fds
        - Src:             'sendto_kdc.c:1607,14'
          Dst:             make_data
        - Src:             'sendto_kdc.c:1613,15'
          Dst:             getpeername
        - Src:             'sendto_kdc.c:1614,5'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1620,17'
          Dst:             socktype_for_transport
        - Src:             'sendto_kdc.c:1621,17'
          Dst:             krb5int_trace
        - Src:             'sendto_kdc.c:1622,13'
          Dst:             close
        - Src:             'sendto_kdc.c:1623,13'
          Dst:             free_http_tls_data
    - functionName:    getpeername
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_kdc_recv_hook
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_kdc_send_hook
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sendto_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    split_trailer
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          132
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - make_data
        - memchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:170,15'
          Dst:             memchr
        - Src:             'sn2princ.c:175,35'
          Dst:             memchr
        - Src:             'sn2princ.c:177,20'
          Dst:             make_data
        - Src:             'sn2princ.c:179,17'
          Dst:             make_data
        - Src:             'sn2princ.c:180,20'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qualify_shortname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          108
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - asprintf
        - k5_primary_domain
        - profile_get_string
        - profile_release_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:66,11'
          Dst:             profile_get_string
        - Src:             'sn2princ.c:74,21'
          Dst:             k5_primary_domain
        - Src:             'sn2princ.c:79,13'
          Dst:             asprintf
        - Src:             'sn2princ.c:83,5'
          Dst:             profile_release_string
    - functionName:    use_reverse_dns
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - profile_get_boolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:48,11'
          Dst:             profile_get_boolean
    - functionName:    krb5_sname_to_principal
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          173
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - canonicalize_princ
        - free_canonprinc
        - gethostname
        - krb5_build_principal
        - krb5_copy_principal
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:349,13'
          Dst:             gethostname
        - Src:             'sn2princ.c:350,20'
          Dst:             __errno_location
        - Src:             'sn2princ.c:359,11'
          Dst:             krb5_build_principal
        - Src:             'sn2princ.c:374,11'
          Dst:             canonicalize_princ
        - Src:             'sn2princ.c:376,15'
          Dst:             krb5_copy_principal
        - Src:             'sn2princ.c:377,5'
          Dst:             free_canonprinc
        - Src:             'sn2princ.c:378,5'
          Dst:             krb5_free_principal
    - functionName:    canonicalize_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          347
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - asprintf
        - expand_hostname
        - k5memdup0
        - krb5_free_host_realm
        - krb5_get_default_realm
        - krb5_get_host_realm
        - split_trailer
        - strcmp
        - strdup
        - string2data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:195,5'
          Dst:             __assert_fail
        - Src:             'sn2princ.c:196,5'
          Dst:             split_trailer
        - Src:             'sn2princ.c:198,16'
          Dst:             k5memdup0
        - Src:             'sn2princ.c:204,15'
          Dst:             expand_hostname
        - Src:             'sn2princ.c:208,21'
          Dst:             strdup
        - Src:             'sn2princ.c:216,9'
          Dst:             asprintf
        - Src:             'sn2princ.c:224,36'
          Dst:             strcmp
        - Src:             'sn2princ.c:233,15'
          Dst:             krb5_get_host_realm
        - Src:             'sn2princ.c:242,19'
          Dst:             krb5_get_default_realm
        - Src:             'sn2princ.c:246,27'
          Dst:             strdup
        - Src:             'sn2princ.c:256,28'
          Dst:             string2data
        - Src:             'sn2princ.c:258,27'
          Dst:             string2data
        - Src:             'sn2princ.c:266,5'
          Dst:             krb5_free_host_realm
    - functionName:    free_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/./os-proto.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_hostname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          277
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - __ctype_b_loc
        - krb5int_freeaddrinfo
        - krb5int_getaddrinfo
        - krb5int_getnameinfo
        - qualify_shortname
        - strchr
        - strdup
        - strlen
        - tolower
        - use_reverse_dns
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:104,15'
          Dst:             krb5int_getaddrinfo
        - Src:             'sn2princ.c:110,21'
          Dst:             use_reverse_dns
        - Src:             'sn2princ.c:112,19'
          Dst:             krb5int_getnameinfo
        - Src:             'sn2princ.c:123,30'
          Dst:             strchr
        - Src:             'sn2princ.c:124,21'
          Dst:             qualify_shortname
        - Src:             'sn2princ.c:129,12'
          Dst:             strdup
        - Src:             'sn2princ.c:135,13'
          Dst:             __ctype_b_loc
        - Src:             'sn2princ.c:136,18'
          Dst:             tolower
        - Src:             'sn2princ.c:141,20'
          Dst:             strlen
        - Src:             'sn2princ.c:151,9'
          Dst:             krb5int_freeaddrinfo
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    k5_sname_compare
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - free_canonprinc
        - k5_canonprinc
        - krb5_principal_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:319,19'
          Dst:             k5_canonprinc
        - Src:             'sn2princ.c:321,13'
          Dst:             krb5_principal_compare
        - Src:             'sn2princ.c:326,5'
          Dst:             free_canonprinc
    - functionName:    k5_canonprinc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          199
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - canonicalize_princ
        - krb5_get_default_realm
        - string2data
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:294,19'
          Dst:             krb5_get_default_realm
        - Src:             'sn2princ.c:298,32'
          Dst:             string2data
        - Src:             'sn2princ.c:307,12'
          Dst:             canonicalize_princ
    - functionName:    krb5_expand_hostname
      functionSourceFile: '/src/krb5/src/lib/krb5/os/sn2princ.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - expand_hostname
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sn2princ.c:162,12'
          Dst:             expand_hostname
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_within
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2379
      functionLinenumberEnd: 2380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ts_after
        - ts_incr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2380,25'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,13'
          Dst:             ts_after
        - Src:             '../../../include/k5-int.h:2380,56'
          Dst:             ts_incr
        - Src:             '../../../include/k5-int.h:2380,44'
          Dst:             ts_after
    - functionName:    krb5_check_clockskew
      functionSourceFile: '/src/krb5/src/lib/krb5/os/timeofday.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_timeofday
        - ts_within
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'timeofday.c:60,14'
          Dst:             krb5_timeofday
        - Src:             'timeofday.c:63,10'
          Dst:             ts_within
    - functionName:    krb5_timeofday
      functionSourceFile: '/src/krb5/src/lib/krb5/os/timeofday.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - time
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'timeofday.c:45,12'
          Dst:             time
        - Src:             'timeofday.c:47,34'
          Dst:             __errno_location
    - functionName:    krb5_set_time_offsets
      functionSourceFile: '/src/krb5/src/lib/krb5/os/toffset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_get_time_offsets
      functionSourceFile: '/src/krb5/src/lib/krb5/os/toffset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_use_natural_time
      functionSourceFile: '/src/krb5/src/lib/krb5/os/toffset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_debugging_time
      functionSourceFile: '/src/krb5/src/lib/krb5/os/toffset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_delta
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2348
      functionLinenumberEnd: 2349
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_real_time
      functionSourceFile: '/src/krb5/src/lib/krb5/os/toffset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_crypto_us_timeofday
        - ts_delta
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'toffset.c:47,14'
          Dst:             krb5_crypto_us_timeofday
        - Src:             'toffset.c:51,27'
          Dst:             ts_delta
    - functionName:    buf_is_printable
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    padata_type_string
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          212
      EdgeCount:       82
      CyclomaticComplexity: 42
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'trace.c:129,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    principal_type_string
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          82
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'trace.c:108,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subfmt
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add
        - trace_format
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:377,11'
          Dst:             trace_format
        - Src:             'trace.c:379,9'
          Dst:             k5_buf_add
    - functionName:    trace_format
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         273
      ICount:          1553
      EdgeCount:       362
      CyclomaticComplexity: 91
      functionsReached:
        - buf_add_printable
        - buf_add_printable_len
        - hash_bytes
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - k5_print_addr_port
        - k5_strerror_r
        - krb5_cc_get_name
        - krb5_cc_get_type
        - krb5_enctype_to_name
        - krb5_free_error_message
        - krb5_free_unparsed_name
        - krb5_get_error_message
        - krb5_kt_get_name
        - krb5_unparse_name
        - make_data
        - padata_type_string
        - principal_type_string
        - ss2sa
        - strcmp
        - strcspn
        - subfmt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:197,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'trace.c:200,15'
          Dst:             strcspn
        - Src:             'trace.c:201,9'
          Dst:             k5_buf_add_len
        - Src:             'trace.c:205,15'
          Dst:             strcspn
        - Src:             'trace.c:213,13'
          Dst:             strcmp
        - Src:             'trace.c:214,13'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:215,20'
          Dst:             strcmp
        - Src:             'trace.c:216,13'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:217,20'
          Dst:             strcmp
        - Src:             'trace.c:219,13'
          Dst:             buf_add_printable
        - Src:             'trace.c:220,20'
          Dst:             strcmp
        - Src:             'trace.c:224,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:226,17'
          Dst:             buf_add_printable_len
        - Src:             'trace.c:227,20'
          Dst:             strcmp
        - Src:             'trace.c:231,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:234,21'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:236,20'
          Dst:             strcmp
        - Src:             'trace.c:240,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:242,23'
          Dst:             hash_bytes
        - Src:             'trace.c:244,21'
          Dst:             k5_buf_add
        - Src:             'trace.c:247,20'
          Dst:             strcmp
        - Src:             'trace.c:250,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:252,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:254,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:256,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:258,17'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:260,32'
          Dst:             ss2sa
        - Src:             'trace.c:260,13'
          Dst:             k5_print_addr_port
        - Src:             'trace.c:261,13'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:262,20'
          Dst:             strcmp
        - Src:             'trace.c:265,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:267,17'
          Dst:             buf_add_printable_len
        - Src:             'trace.c:268,20'
          Dst:             strcmp
        - Src:             'trace.c:271,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:273,17'
          Dst:             subfmt
        - Src:             'trace.c:274,20'
          Dst:             strcmp
        - Src:             'trace.c:276,13'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:277,17'
          Dst:             k5_strerror_r
        - Src:             'trace.c:278,17'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:279,20'
          Dst:             strcmp
        - Src:             'trace.c:281,17'
          Dst:             krb5_get_error_message
        - Src:             'trace.c:282,13'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:283,13'
          Dst:             krb5_free_error_message
        - Src:             'trace.c:284,20'
          Dst:             strcmp
        - Src:             'trace.c:287,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:289,17'
          Dst:             subfmt
        - Src:             'trace.c:293,20'
          Dst:             strcmp
        - Src:             'trace.c:296,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:298,17'
          Dst:             subfmt
        - Src:             'trace.c:299,20'
          Dst:             strcmp
        - Src:             'trace.c:301,20'
          Dst:             make_data
        - Src:             'trace.c:302,13'
          Dst:             subfmt
        - Src:             'trace.c:304,20'
          Dst:             strcmp
        - Src:             'trace.c:306,17'
          Dst:             krb5_unparse_name
        - Src:             'trace.c:307,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:308,17'
          Dst:             krb5_free_unparsed_name
        - Src:             'trace.c:310,20'
          Dst:             strcmp
        - Src:             'trace.c:311,17'
          Dst:             principal_type_string
        - Src:             'trace.c:312,13'
          Dst:             k5_buf_add
        - Src:             'trace.c:313,20'
          Dst:             strcmp
        - Src:             'trace.c:316,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:319,24'
          Dst:             padata_type_string
        - Src:             'trace.c:321,21'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:323,21'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:326,21'
          Dst:             k5_buf_add
        - Src:             'trace.c:328,20'
          Dst:             strcmp
        - Src:             'trace.c:330,20'
          Dst:             padata_type_string
        - Src:             'trace.c:332,17'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:334,17'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:335,20'
          Dst:             strcmp
        - Src:             'trace.c:337,17'
          Dst:             krb5_enctype_to_name
        - Src:             'trace.c:338,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:340,17'
          Dst:             k5_buf_add_fmt
        - Src:             'trace.c:341,20'
          Dst:             strcmp
        - Src:             'trace.c:344,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:346,17'
          Dst:             subfmt
        - Src:             'trace.c:348,21'
          Dst:             k5_buf_add
        - Src:             'trace.c:350,20'
          Dst:             strcmp
        - Src:             'trace.c:352,30'
          Dst:             krb5_cc_get_type
        - Src:             'trace.c:352,13'
          Dst:             k5_buf_add
        - Src:             'trace.c:353,13'
          Dst:             k5_buf_add
        - Src:             'trace.c:354,30'
          Dst:             krb5_cc_get_name
        - Src:             'trace.c:354,13'
          Dst:             k5_buf_add
        - Src:             'trace.c:355,20'
          Dst:             strcmp
        - Src:             'trace.c:357,17'
          Dst:             krb5_kt_get_name
        - Src:             'trace.c:358,17'
          Dst:             k5_buf_add
        - Src:             'trace.c:359,20'
          Dst:             strcmp
        - Src:             'trace.c:361,13'
          Dst:             subfmt
        - Src:             'trace.c:365,12'
          Dst:             k5_buf_cstring
    - functionName:    buf_add_printable
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buf_add_printable_len
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:84,35'
          Dst:             strlen
        - Src:             'trace.c:84,5'
          Dst:             buf_add_printable_len
    - functionName:    buf_add_printable_len
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - buf_is_printable
        - k5_buf_add_len
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:66,9'
          Dst:             buf_is_printable
        - Src:             'trace.c:67,9'
          Dst:             k5_buf_add_len
        - Src:             'trace.c:70,17'
          Dst:             buf_is_printable
        - Src:             'trace.c:71,17'
          Dst:             k5_buf_add_len
        - Src:             'trace.c:73,17'
          Dst:             snprintf
        - Src:             'trace.c:75,17'
          Dst:             k5_buf_add_len
    - functionName:    hash_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - asprintf
        - krb5_free_checksum_contents
        - krb5_k_make_checksum
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:93,19'
          Dst:             make_data
        - Src:             'trace.c:96,9'
          Dst:             krb5_k_make_checksum
        - Src:             'trace.c:100,16'
          Dst:             asprintf
        - Src:             'trace.c:101,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    ss2sa
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_trace_cb
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - strlen
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:441,9'
          Dst:             close
        - Src:             'trace.c:446,38'
          Dst:             strlen
        - Src:             'trace.c:446,12'
          Dst:             write
    - functionName:    krb5_set_trace_callback
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_trace
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - asprintf
        - getpid
        - k5_us_timeofday
        - trace_format
      functionUses:    152
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:406,11'
          Dst:             trace_format
        - Src:             'trace.c:409,9'
          Dst:             k5_us_timeofday
        - Src:             'trace.c:411,51'
          Dst:             getpid
        - Src:             'trace.c:411,9'
          Dst:             asprintf
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_set_trace_filename
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - file_trace_cb
        - krb5_set_trace_callback
        - open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:458,11'
          Dst:             open
        - Src:             'trace.c:461,16'
          Dst:             __errno_location
        - Src:             'trace.c:464,12'
          Dst:             krb5_set_trace_callback
        - Src:             'trace.c:464,12'
          Dst:             file_trace_cb
    - functionName:    k5_init_trace
      functionSourceFile: '/src/krb5/src/lib/krb5/os/trace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_set_trace_filename
        - secure_getenv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'trace.c:389,16'
          Dst:             secure_getenv
        - Src:             'trace.c:391,16'
          Dst:             krb5_set_trace_filename
    - functionName:    krb5_unlock_file
      functionSourceFile: '/src/krb5/src/lib/krb5/os/unlck_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_lock_file
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'unlck_file.c:33,12'
          Dst:             krb5_lock_file
    - functionName:    krb5_us_timeofday
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ustime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_time_with_offset
        - krb5_crypto_us_timeofday
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ustime.c:77,16'
          Dst:             k5_time_with_offset
        - Src:             'ustime.c:80,16'
          Dst:             krb5_crypto_us_timeofday
    - functionName:    k5_time_with_offset
      functionSourceFile: '/src/krb5/src/lib/krb5/os/ustime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_crypto_us_timeofday
        - ts_incr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ustime.c:47,14'
          Dst:             krb5_crypto_us_timeofday
        - Src:             'ustime.c:53,15'
          Dst:             ts_incr
        - Src:             'ustime.c:57,15'
          Dst:             ts_incr
        - Src:             'ustime.c:59,11'
          Dst:             ts_incr
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_release_string
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 617
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_results
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          117
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:549,21'
          Dst:             strdup
        - Src:             'prof_get.c:554,22'
          Dst:             strdup
    - functionName:    is_list_member
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:109,14'
          Dst:             strcmp
    - functionName:    profile_get_relation_names
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          100
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - add_to_list
        - end_list
        - init_list
        - is_list_member
        - profile_iterator
        - profile_iterator_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:451,19'
          Dst:             profile_iterator_create
        - Src:             'prof_get.c:457,19'
          Dst:             init_list
        - Src:             'prof_get.c:461,23'
          Dst:             profile_iterator
        - Src:             'prof_get.c:463,22'
          Dst:             is_list_member
        - Src:             'prof_get.c:464,13'
          Dst:             add_to_list
        - Src:             'prof_get.c:468,5'
          Dst:             end_list
        - Src:             'prof_get.c:472,5'
          Dst:             end_list
    - functionName:    profile_iterator_create
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          119
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - profile_node_iterator_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:508,18'
          Dst:             profile_node_iterator_create
    - functionName:    init_list
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_iterator
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          231
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - profile_node_iterator
        - set_results
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:595,18'
          Dst:             set_results
        - Src:             'prof_get.c:603,14'
          Dst:             profile_node_iterator
        - Src:             'prof_get.c:610,12'
          Dst:             set_results
    - functionName:    add_to_list
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          104
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
        - strdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:83,19'
          Dst:             realloc
        - Src:             'prof_get.c:89,14'
          Dst:             strdup
    - functionName:    end_list
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          85
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_get_subsection_names
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - add_to_list
        - end_list
        - init_list
        - profile_iterator
        - profile_iterator_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:413,19'
          Dst:             profile_iterator_create
        - Src:             'prof_get.c:419,19'
          Dst:             init_list
        - Src:             'prof_get.c:423,23'
          Dst:             profile_iterator
        - Src:             'prof_get.c:426,13'
          Dst:             add_to_list
        - Src:             'prof_get.c:430,5'
          Dst:             end_list
        - Src:             'prof_get.c:434,5'
          Dst:             end_list
    - functionName:    profile_parse_boolean
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          87
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:355,14'
          Dst:             strcasecmp
        - Src:             'prof_get.c:362,14'
          Dst:             strcasecmp
    - functionName:    profile_get_boolean
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - profile_get_value
        - profile_parse_boolean
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:388,14'
          Dst:             profile_get_value
        - Src:             'prof_get.c:395,14'
          Dst:             profile_parse_boolean
    - functionName:    profile_get_value
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - get_value_vt
        - profile_iterator
        - profile_iterator_create
        - profile_iterator_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:230,16'
          Dst:             get_value_vt
        - Src:             'prof_get.c:232,14'
          Dst:             profile_iterator_create
        - Src:             'prof_get.c:237,14'
          Dst:             profile_iterator
        - Src:             'prof_get.c:247,5'
          Dst:             profile_iterator_free
    - functionName:    get_value_vt
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:208,18'
          Dst:             strdup
    - functionName:    profile_iterator_free
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          82
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - profile_node_iterator_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:535,9'
          Dst:             profile_node_iterator_free
    - functionName:    parse_int
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - strlen
        - strtol
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:291,5'
          Dst:             __errno_location
        - Src:             'prof_get.c:292,16'
          Dst:             strtol
        - Src:             'prof_get.c:295,59'
          Dst:             __errno_location
        - Src:             'prof_get.c:301,30'
          Dst:             strlen
    - functionName:    profile_get_integer
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - parse_int
        - profile_get_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:324,14'
          Dst:             profile_get_value
        - Src:             'prof_get.c:331,14'
          Dst:             parse_int
    - functionName:    profile_get_string
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - profile_get_value
        - strdup
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:265,18'
          Dst:             profile_get_value
        - Src:             'prof_get.c:274,23'
          Dst:             strdup
    - functionName:    get_values_vt
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          95
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - add_to_list
        - end_list
        - init_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:144,14'
          Dst:             init_list
        - Src:             'prof_get.c:147,13'
          Dst:             add_to_list
        - Src:             'prof_get.c:148,9'
          Dst:             end_list
    - functionName:    profile_get_values
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          135
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - add_to_list
        - end_list
        - get_values_vt
        - init_list
        - profile_node_iterator
        - profile_node_iterator_create
        - profile_node_iterator_free
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_get.c:168,16'
          Dst:             get_values_vt
        - Src:             'prof_get.c:170,19'
          Dst:             profile_node_iterator_create
        - Src:             'prof_get.c:175,14'
          Dst:             init_list
        - Src:             'prof_get.c:180,23'
          Dst:             profile_node_iterator
        - Src:             'prof_get.c:183,13'
          Dst:             add_to_list
        - Src:             'prof_get.c:192,5'
          Dst:             end_list
        - Src:             'prof_get.c:193,5'
          Dst:             profile_node_iterator_free
    - functionName:    profile_free_list
      functionSourceFile: '/src/krb5/src/util/profile/prof_get.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    parse_modspec
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          142
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - k5_path_join
        - strchr
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:69,9'
          Dst:             strchr
        - Src:             'prof_init.c:81,11'
          Dst:             k5_path_join
        - Src:             'prof_init.c:86,16'
          Dst:             strdup
    - functionName:    unpack_int32
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - load_32_be
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:598,17'
          Dst:             load_32_be
    - functionName:    profile_ser_internalize
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          235
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - profile_init
        - unpack_int32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:622,16'
          Dst:             unpack_int32
        - Src:             'prof_init.c:631,12'
          Dst:             unpack_int32
        - Src:             'prof_init.c:640,14'
          Dst:             unpack_int32
        - Src:             'prof_init.c:651,9'
          Dst:             unpack_int32
        - Src:             'prof_init.c:662,14'
          Dst:             profile_init
    - functionName:    profile_init
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - profile_init_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:234,12'
          Dst:             profile_init_flags
    - functionName:    profile_init_flags
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          250
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - init_load_module
        - profile_open_file
        - profile_release
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:190,22'
          Dst:             profile_open_file
        - Src:             'prof_init.c:194,26'
          Dst:             init_load_module
        - Src:             'prof_init.c:208,17'
          Dst:             profile_release
        - Src:             'prof_init.c:222,13'
          Dst:             profile_release
    - functionName:    init_load_module
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          211
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - init_module
        - k5_clear_error
        - k5_mutex_init
        - k5_os_mutex_destroy
        - krb5int_close_plugin
        - krb5int_get_plugin_func
        - krb5int_open_plugin
        - parse_modspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:112,11'
          Dst:             parse_modspec
        - Src:             'prof_init.c:120,11'
          Dst:             k5_mutex_init
        - Src:             'prof_init.c:126,11'
          Dst:             krb5int_open_plugin
        - Src:             'prof_init.c:129,11'
          Dst:             krb5int_get_plugin_func
        - Src:             'prof_init.c:146,11'
          Dst:             init_module
        - Src:             'prof_init.c:151,5'
          Dst:             k5_clear_error
        - Src:             'prof_init.c:156,13'
          Dst:             k5_os_mutex_destroy
        - Src:             'prof_init.c:159,13'
          Dst:             krb5int_close_plugin
    - functionName:    profile_release
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          98
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - profile_abandon
        - profile_close_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:517,9'
          Dst:             profile_abandon
        - Src:             'prof_init.c:522,13'
          Dst:             profile_close_file
    - functionName:    profile_abandon
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          158
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_os_mutex_destroy
        - krb5int_close_plugin
        - profile_free_file
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:485,13'
          Dst:             k5_mutex_lock
        - Src:             'prof_init.c:487,17'
          Dst:             krb5int_close_plugin
        - Src:             'prof_init.c:488,17'
          Dst:             k5_mutex_unlock
        - Src:             'prof_init.c:489,17'
          Dst:             k5_os_mutex_destroy
        - Src:             'prof_init.c:492,17'
          Dst:             k5_mutex_unlock
        - Src:             'prof_init.c:498,13'
          Dst:             profile_free_file
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    init_module
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          168
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pack_int32
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - store_32_be
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:548,5'
          Dst:             store_32_be
    - functionName:    profile_ser_externalize
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          147
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - pack_int32
        - profile_ser_size
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:569,16'
          Dst:             profile_ser_size
        - Src:             'prof_init.c:574,13'
          Dst:             pack_int32
        - Src:             'prof_init.c:575,13'
          Dst:             pack_int32
        - Src:             'prof_init.c:577,34'
          Dst:             strlen
        - Src:             'prof_init.c:578,17'
          Dst:             pack_int32
        - Src:             'prof_init.c:585,13'
          Dst:             pack_int32
    - functionName:    profile_ser_size
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:540,21'
          Dst:             strlen
    - functionName:    profile_free_buffer
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_flush_to_buffer
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - profile_flush_file_data_to_buffer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:463,12'
          Dst:             profile_flush_file_data_to_buffer
    - functionName:    profile_flush_to_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - profile_flush_file_data_to_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:452,16'
          Dst:             profile_flush_file_data_to_file
    - functionName:    profile_flush
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - profile_flush_file_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:437,16'
          Dst:             profile_flush_file_data
    - functionName:    profile_is_modified
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          105
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_is_writable
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          101
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - profile_file_is_writable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:396,21'
          Dst:             profile_file_is_writable
    - functionName:    profile_init_path
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          215
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - profile_init_flags
        - strchr
        - strlen
        - strncpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:347,33'
          Dst:             strchr
        - Src:             'prof_init.c:347,57'
          Dst:             strlen
        - Src:             'prof_init.c:357,9'
          Dst:             strncpy
        - Src:             'prof_init.c:367,14'
          Dst:             profile_init_flags
    - functionName:    copy_vtable_profile
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          153
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - init_module
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:259,15'
          Dst:             init_module
        - Src:             'prof_init.c:265,15'
          Dst:             init_module
        - Src:             'prof_init.c:273,9'
          Dst:             k5_mutex_lock
        - Src:             'prof_init.c:275,9'
          Dst:             k5_mutex_unlock
    - functionName:    profile_copy
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - copy_vtable_profile
        - profile_abandon
        - profile_copy_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:302,16'
          Dst:             copy_vtable_profile
        - Src:             'prof_init.c:304,15'
          Dst:             calloc
        - Src:             'prof_init.c:311,13'
          Dst:             profile_copy_file
        - Src:             'prof_init.c:313,13'
          Dst:             profile_abandon
    - functionName:    profile_init_vtable
      functionSourceFile: '/src/krb5/src/util/profile/prof_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - init_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_init.c:241,12'
          Dst:             init_module
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/lib/krb5/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_lib_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb5_libinit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - add_error_table
        - bindtextdomain
        - error_message
        - k5_mutex_finish_init
        - k5_set_error_info_callout_fn
        - krb5int_cc_initialize
        - krb5int_kt_initialize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'krb5_libinit.c:27,5'
          Dst:             k5_set_error_info_callout_fn
        - Src:             'krb5_libinit.c:27,5'
          Dst:             error_message
        - Src:             'krb5_libinit.c:33,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:34,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:35,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:36,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:37,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:38,5'
          Dst:             add_error_table
        - Src:             'krb5_libinit.c:40,5'
          Dst:             bindtextdomain
        - Src:             'krb5_libinit.c:43,11'
          Dst:             krb5int_kt_initialize
        - Src:             'krb5_libinit.c:47,11'
          Dst:             krb5int_cc_initialize
        - Src:             'krb5_libinit.c:50,11'
          Dst:             k5_mutex_finish_init
    - functionName:    bindtextdomain
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_lib_init__aux
      functionSourceFile: '/src/krb5/src/lib/krb5/krb5_libinit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 19
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_lib_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'krb5_libinit.c:19,1'
          Dst:             krb5int_lib_init
    - functionName:    krb5int_cleanup_library
      functionSourceFile: '/src/krb5/src/lib/krb5/krb5_libinit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_initialize_library
      functionSourceFile: '/src/krb5/src/lib/krb5/krb5_libinit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - k5_once
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'krb5_libinit.c:60,12'
          Dst:             k5_once
        - Src:             'krb5_libinit.c:60,12'
          Dst:             __assert_fail
    - functionName:    initialize_asn1_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/asn1_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_err.c:49,12'
          Dst:             add_error_table
    - functionName:    initialize_kdb5_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/kdb5_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kdb5_err.c:82,12'
          Dst:             add_error_table
    - functionName:    initialize_krb5_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/krb5_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'krb5_err.c:291,12'
          Dst:             add_error_table
    - functionName:    initialize_k5e1_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/k5e1_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'k5e1_err.c:49,12'
          Dst:             add_error_table
    - functionName:    initialize_kv5m_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/kv5m_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kv5m_err.c:96,12'
          Dst:             add_error_table
    - functionName:    initialize_k524_error_table
      functionSourceFile: '/src/krb5/src/lib/krb5/error_tables/krb524_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'krb524_err.c:44,12'
          Dst:             add_error_table
    - functionName:    null_terminate
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1326,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1327,11'
          Dst:             realloc
        - Src:             'asn1_encode.c:1331,5'
          Dst:             __assert_fail
    - functionName:    decode_sequence_of
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1514
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          136
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - check_atype_tag
        - decode_atype
        - free_sequence_of
        - get_tag
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1486,15'
          Dst:             get_tag
        - Src:             'asn1_encode.c:1489,14'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1493,18'
          Dst:             realloc
        - Src:             'asn1_encode.c:1501,15'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1511,5'
          Dst:             free_sequence_of
    - functionName:    get_tag
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          318
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_atype_tag
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1132
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         61
      ICount:          395
      EdgeCount:       70
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - abort
        - check_atype_tag
      functionUses:    8
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1058,5'
          Branch Sides:    []
        - Branch String:   'asn1_encode.c:1083,9'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1061,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1071,16'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1075,16'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1079,16'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1111,13'
          Dst:             abort
        - Src:             'asn1_encode.c:1130,9'
          Dst:             abort
    - functionName:    decode_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          528
      EdgeCount:       86
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
        - abort
        - check_atype_tag
        - decode_atype
        - decode_atype_to_ptr
        - decode_cntype
        - decode_sequence
        - get_tag
        - k5_asn1_decode_bool
        - k5_asn1_decode_int
        - k5_asn1_decode_uint
        - store_count
        - store_int
        - store_uint
      functionUses:    9
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1156,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1159,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1163,16'
          Dst:             decode_sequence
        - Src:             'asn1_encode.c:1166,21'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1167,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1170,20'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1172,19'
          Dst:             decode_atype_to_ptr
        - Src:             'asn1_encode.c:1175,13'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1181,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1182,16'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1187,16'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1193,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1194,15'
          Dst:             decode_cntype
        - Src:             'asn1_encode.c:1197,16'
          Dst:             store_count
        - Src:             'asn1_encode.c:1206,19'
          Dst:             get_tag
        - Src:             'asn1_encode.c:1212,18'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1215,16'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1219,15'
          Dst:             k5_asn1_decode_bool
        - Src:             'asn1_encode.c:1222,16'
          Dst:             store_int
        - Src:             'asn1_encode.c:1226,15'
          Dst:             k5_asn1_decode_int
        - Src:             'asn1_encode.c:1229,16'
          Dst:             store_int
        - Src:             'asn1_encode.c:1233,15'
          Dst:             k5_asn1_decode_uint
        - Src:             'asn1_encode.c:1236,16'
          Dst:             store_uint
        - Src:             'asn1_encode.c:1241,15'
          Dst:             k5_asn1_decode_int
        - Src:             'asn1_encode.c:1251,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1252,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1253,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1254,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1255,9'
          Dst:             abort
    - functionName:    free_sequence_of
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - free_atype
        - free_atype_ptr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1044,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1047,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:1048,9'
          Dst:             free_atype_ptr
    - functionName:    free_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          241
      EdgeCount:       36
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - abort
        - free_atype
        - free_atype_ptr
        - free_cntype
        - free_sequence
        - free_sequence_of
        - get_nullterm_sequence_len
        - load_count
      functionUses:    8
      BranchProfiles:
        - Branch String:   'asn1_encode.c:896,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:904,9'
          Dst:             free_sequence
        - Src:             'asn1_encode.c:908,21'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:910,13'
          Dst:             free_atype
        - Src:             'asn1_encode.c:911,13'
          Dst:             free_atype_ptr
        - Src:             'asn1_encode.c:917,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:918,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:923,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:930,13'
          Dst:             load_count
        - Src:             'asn1_encode.c:931,13'
          Dst:             free_cntype
        - Src:             'asn1_encode.c:936,24'
          Dst:             get_nullterm_sequence_len
        - Src:             'asn1_encode.c:937,9'
          Dst:             free_sequence_of
        - Src:             'asn1_encode.c:942,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:951,9'
          Dst:             abort
    - functionName:    free_atype_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          171
      EdgeCount:       54
      CyclomaticComplexity: 28
      functionsReached:
        - __assert_fail
        - abort
        - free_atype_ptr
      functionUses:    8
      BranchProfiles:
        - Branch String:   'asn1_encode.c:958,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:971,21'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:973,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:978,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:979,9'
          Dst:             free_atype_ptr
        - Src:             'asn1_encode.c:984,9'
          Dst:             free_atype_ptr
        - Src:             'asn1_encode.c:989,9'
          Dst:             free_atype_ptr
        - Src:             'asn1_encode.c:993,9'
          Dst:             abort
    - functionName:    free_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - free_atype
        - free_atype_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1034,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:1036,9'
          Dst:             free_atype_ptr
    - functionName:    load_count
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - load_int
        - load_uint
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:522,25'
          Dst:             load_int
        - Src:             'asn1_encode.c:527,26'
          Dst:             load_uint
    - functionName:    free_cntype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1026
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - abort
        - free_atype
        - free_atype_ptr
        - free_sequence_of
      functionUses:    1
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1000,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1009,24'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1010,9'
          Dst:             free_sequence_of
        - Src:             'asn1_encode.c:1012,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1018,13'
          Dst:             free_atype
        - Src:             'asn1_encode.c:1019,13'
          Dst:             free_atype_ptr
        - Src:             'asn1_encode.c:1024,9'
          Dst:             abort
    - functionName:    get_nullterm_sequence_len
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:462,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:463,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:468,15'
          Dst:             __assert_fail
    - functionName:    load_int
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'asn1_encode.c:493,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:498,14'
          Dst:             abort
    - functionName:    load_uint
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'asn1_encode.c:505,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:510,14'
          Dst:             abort
    - functionName:    decode_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1418
      functionLinenumberEnd: 1470
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          251
      EdgeCount:       56
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - check_atype_tag
        - decode_atype
        - free_atype
        - free_atype_ptr
        - get_tag
        - omit_atype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1424,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1428,15'
          Dst:             get_tag
        - Src:             'asn1_encode.c:1439,17'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1441,19'
          Dst:             omit_atype
        - Src:             'asn1_encode.c:1449,15'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1456,15'
          Dst:             omit_atype
        - Src:             'asn1_encode.c:1466,9'
          Dst:             free_atype
        - Src:             'asn1_encode.c:1468,9'
          Dst:             free_atype_ptr
    - functionName:    decode_atype_to_ptr
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1339
      functionLinenumberEnd: 1372
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          127
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - decode_atype
        - decode_sequence_of
        - free_sequence_of
        - null_terminate
      functionUses:    2
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1345,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1348,15'
          Dst:             decode_sequence_of
        - Src:             'asn1_encode.c:1351,15'
          Dst:             null_terminate
        - Src:             'asn1_encode.c:1353,13'
          Dst:             free_sequence_of
        - Src:             'asn1_encode.c:1360,15'
          Dst:             calloc
        - Src:             'asn1_encode.c:1363,15'
          Dst:             decode_atype
    - functionName:    decode_cntype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1315
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          239
      EdgeCount:       37
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - abort
        - check_atype_tag
        - decode_atype
        - decode_sequence_of
        - store_der
      functionUses:    1
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1272,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1275,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1279,16'
          Dst:             store_der
        - Src:             'asn1_encode.c:1284,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1285,15'
          Dst:             decode_sequence_of
        - Src:             'asn1_encode.c:1289,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1296,17'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1297,23'
          Dst:             decode_atype
        - Src:             'asn1_encode.c:1310,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1311,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1312,9'
          Dst:             abort
    - functionName:    store_count
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 597
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - store_int
        - store_uint
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:602,20'
          Dst:             store_int
        - Src:             'asn1_encode.c:606,20'
          Dst:             store_int
        - Src:             'asn1_encode.c:608,16'
          Dst:             store_uint
    - functionName:    k5_asn1_decode_bool
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_int
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - abort
      functionUses:    4
      BranchProfiles:
        - Branch String:   'asn1_encode.c:538,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:560,9'
          Dst:             abort
    - functionName:    k5_asn1_decode_int
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_decode_uint
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_uint
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'asn1_encode.c:567,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:589,9'
          Dst:             abort
    - functionName:    store_der
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    omit_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1412
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          144
      EdgeCount:       43
      CyclomaticComplexity: 23
      functionsReached:
        - abort
        - omit_atype
      functionUses:    5
      BranchProfiles:
        - Branch String:   'asn1_encode.c:1379,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:1393,16'
          Dst:             omit_atype
        - Src:             'asn1_encode.c:1397,16'
          Dst:             omit_atype
        - Src:             'asn1_encode.c:1401,16'
          Dst:             omit_atype
        - Src:             'asn1_encode.c:1410,9'
          Dst:             abort
    - functionName:    encode_sequence_of
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - encode_atype_and_tag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:870,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:873,15'
          Dst:             encode_atype_and_tag
    - functionName:    encode_atype_and_tag
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - encode_atype
        - make_tag
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:783,11'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:786,11'
          Dst:             make_tag
    - functionName:    encode_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          533
      EdgeCount:       73
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - abort
        - encode_atype
        - encode_cntype
        - encode_nullterm_sequence_of
        - encode_sequence
        - k5_asn1_encode_bool
        - k5_asn1_encode_int
        - k5_asn1_encode_uint
        - load_count
        - load_int
        - load_uint
        - make_tag
      functionUses:    7
      BranchProfiles:
        - Branch String:   'asn1_encode.c:669,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:672,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:676,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:677,15'
          Dst:             encode_sequence
        - Src:             'asn1_encode.c:686,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:687,34'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:687,16'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:691,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:692,16'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:697,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:699,20'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:707,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:708,15'
          Dst:             load_count
        - Src:             'asn1_encode.c:711,16'
          Dst:             encode_cntype
        - Src:             'asn1_encode.c:715,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:716,15'
          Dst:             encode_nullterm_sequence_of
        - Src:             'asn1_encode.c:728,15'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:732,19'
          Dst:             make_tag
        - Src:             'asn1_encode.c:742,34'
          Dst:             load_int
        - Src:             'asn1_encode.c:742,9'
          Dst:             k5_asn1_encode_bool
        - Src:             'asn1_encode.c:748,33'
          Dst:             load_int
        - Src:             'asn1_encode.c:748,9'
          Dst:             k5_asn1_encode_int
        - Src:             'asn1_encode.c:754,34'
          Dst:             load_uint
        - Src:             'asn1_encode.c:754,9'
          Dst:             k5_asn1_encode_uint
        - Src:             'asn1_encode.c:761,9'
          Dst:             k5_asn1_encode_int
        - Src:             'asn1_encode.c:768,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:769,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:770,9'
          Dst:             abort
    - functionName:    make_tag
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          156
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - insert_byte
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:341,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:345,13'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:346,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:351,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:354,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:358,13'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:360,9'
          Dst:             insert_byte
    - functionName:    insert_byte
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_sequence
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - encode_atype_and_tag
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:853,15'
          Dst:             encode_atype_and_tag
    - functionName:    encode_cntype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          229
      EdgeCount:       32
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - abort
        - encode_atype
        - encode_sequence_of
        - split_der
      functionUses:    1
      BranchProfiles:
        - Branch String:   'asn1_encode.c:803,5'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1_encode.c:806,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:816,16'
          Dst:             split_der
        - Src:             'asn1_encode.c:820,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:821,15'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:822,15'
          Dst:             encode_sequence_of
        - Src:             'asn1_encode.c:834,16'
          Dst:             encode_atype
        - Src:             'asn1_encode.c:838,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:839,9'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:840,9'
          Dst:             abort
    - functionName:    encode_nullterm_sequence_of
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - encode_sequence_of
        - get_nullterm_sequence_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:483,18'
          Dst:             get_nullterm_sequence_len
        - Src:             'asn1_encode.c:487,12'
          Dst:             encode_sequence_of
    - functionName:    k5_asn1_encode_bool
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - insert_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:62,5'
          Dst:             insert_byte
    - functionName:    k5_asn1_encode_int
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          100
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - insert_byte
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:74,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:80,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:82,9'
          Dst:             insert_byte
    - functionName:    k5_asn1_encode_uint
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - insert_byte
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:94,9'
          Dst:             insert_byte
        - Src:             'asn1_encode.c:100,9'
          Dst:             insert_byte
    - functionName:    split_der
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_tag
        - insert_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:620,11'
          Dst:             get_tag
        - Src:             'asn1_encode.c:625,5'
          Dst:             insert_bytes
    - functionName:    insert_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5memcpy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:53,9'
          Dst:             k5memcpy
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_full_decode
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1600
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - check_atype_tag
        - decode_atype_to_ptr
        - get_tag
      functionUses:    66
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1591,11'
          Dst:             get_tag
        - Src:             'asn1_encode.c:1597,10'
          Dst:             check_atype_tag
        - Src:             'asn1_encode.c:1599,12'
          Dst:             decode_atype_to_ptr
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_full_encode
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1536
      functionLinenumberEnd: 1579
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - encode_atype_and_tag
        - make_data
      functionUses:    65
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1550,11'
          Dst:             encode_atype_and_tag
        - Src:             'asn1_encode.c:1564,11'
          Dst:             encode_atype_and_tag
        - Src:             'asn1_encode.c:1569,5'
          Dst:             __assert_fail
        - Src:             'asn1_encode.c:1577,18'
          Dst:             make_data
    - functionName:    k5_asn1_decode_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1529
      functionLinenumberEnd: 1530
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_atype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1530,12'
          Dst:             decode_atype
    - functionName:    k5_asn1_encode_atype
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1522
      functionLinenumberEnd: 1523
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_atype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:1523,12'
          Dst:             encode_atype
    - functionName:    k5_asn1_decode_bitstring
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_decode_generaltime
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          211
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - krb5int_gmt_mktime
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:255,9'
          Dst:             memcmp
        - Src:             'asn1_encode.c:287,9'
          Dst:             krb5int_gmt_mktime
    - functionName:    k5_asn1_decode_bytestring
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_encode_bitstring
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - insert_byte
        - insert_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:167,5'
          Dst:             insert_bytes
        - Src:             'asn1_encode.c:168,5'
          Dst:             insert_byte
    - functionName:    k5_asn1_encode_generaltime
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          149
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - gmtime_r
        - insert_bytes
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:135,13'
          Dst:             gmtime_r
        - Src:             'asn1_encode.c:150,15'
          Dst:             snprintf
        - Src:             'asn1_encode.c:160,5'
          Dst:             insert_bytes
    - functionName:    gmtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_asn1_encode_bytestring
      functionSourceFile: '/src/krb5/src/lib/krb5/asn.1/asn1_encode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - insert_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1_encode.c:108,5'
          Dst:             insert_bytes
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_16_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put16
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add_len
        - store_16_be
        - store_16_n
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:340,9'
          Dst:             store_16_n
        - Src:             'ccmarshal.c:342,9'
          Dst:             store_16_be
        - Src:             'ccmarshal.c:343,5'
          Dst:             k5_buf_add_len
    - functionName:    put_len_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - put32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:364,5'
          Dst:             put32
        - Src:             'ccmarshal.c:365,5'
          Dst:             k5_buf_add_len
    - functionName:    put32
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add_len
        - store_32_be
        - store_32_n
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:354,9'
          Dst:             store_32_n
        - Src:             'ccmarshal.c:356,9'
          Dst:             store_32_be
        - Src:             'ccmarshal.c:357,5'
          Dst:             k5_buf_add_len
    - functionName:    store_32_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unmarshal_authdatum
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
        - get16
        - get_len_bytes
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:251,10'
          Dst:             calloc
        - Src:             'ccmarshal.c:253,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:258,28'
          Dst:             get16
        - Src:             'ccmarshal.c:259,20'
          Dst:             get_len_bytes
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get16
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_uint16_be
        - k5_input_get_uint16_n
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:111,28'
          Dst:             k5_input_get_uint16_n
        - Src:             'ccmarshal.c:112,9'
          Dst:             k5_input_get_uint16_be
    - functionName:    get_len_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get32
        - k5_input_get_bytes
        - k5_input_set_status
        - k5memdup0
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:130,24'
          Dst:             get32
        - Src:             'ccmarshal.c:131,25'
          Dst:             k5_input_get_bytes
        - Src:             'ccmarshal.c:137,12'
          Dst:             k5memdup0
        - Src:             'ccmarshal.c:139,9'
          Dst:             k5_input_set_status
    - functionName:    get32
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_uint32_be
        - k5_input_get_uint32_n
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:120,28'
          Dst:             k5_input_get_uint32_n
        - Src:             'ccmarshal.c:121,9'
          Dst:             k5_input_get_uint32_be
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5_input_get_uint32_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:125,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:126,32'
          Dst:             load_32_n
    - functionName:    k5_input_get_uint32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:111,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:112,32'
          Dst:             load_32_be
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint16_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:104,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:105,32'
          Dst:             load_16_n
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    load_16_n
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unmarshal_addr
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
        - get16
        - get_len_bytes
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:214,12'
          Dst:             calloc
        - Src:             'ccmarshal.c:216,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:220,22'
          Dst:             get16
        - Src:             'ccmarshal.c:221,22'
          Dst:             get_len_bytes
    - functionName:    krb5_unmarshal_credentials
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_unmarshal_cred
        - k5alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:557,13'
          Dst:             k5alloc
        - Src:             'ccmarshal.c:561,11'
          Dst:             k5_unmarshal_cred
    - functionName:    k5_unmarshal_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          124
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get32
        - get_data
        - k5_input_get_byte
        - k5_input_init
        - krb5_free_cred_contents
        - unmarshal_addrs
        - unmarshal_authdata
        - unmarshal_keyblock
        - unmarshal_princ
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:292,5'
          Dst:             k5_input_init
        - Src:             'ccmarshal.c:293,21'
          Dst:             unmarshal_princ
        - Src:             'ccmarshal.c:294,21'
          Dst:             unmarshal_princ
        - Src:             'ccmarshal.c:295,5'
          Dst:             unmarshal_keyblock
        - Src:             'ccmarshal.c:296,29'
          Dst:             get32
        - Src:             'ccmarshal.c:297,30'
          Dst:             get32
        - Src:             'ccmarshal.c:298,28'
          Dst:             get32
        - Src:             'ccmarshal.c:299,31'
          Dst:             get32
        - Src:             'ccmarshal.c:300,22'
          Dst:             k5_input_get_byte
        - Src:             'ccmarshal.c:301,27'
          Dst:             get32
        - Src:             'ccmarshal.c:302,24'
          Dst:             unmarshal_addrs
        - Src:             'ccmarshal.c:303,23'
          Dst:             unmarshal_authdata
        - Src:             'ccmarshal.c:304,5'
          Dst:             get_data
        - Src:             'ccmarshal.c:305,5'
          Dst:             get_data
        - Src:             'ccmarshal.c:307,9'
          Dst:             krb5_free_cred_contents
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unmarshal_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          161
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - get32
        - get_data
        - k5_input_set_status
        - k5alloc
        - k5calloc
        - krb5_free_principal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:163,13'
          Dst:             k5alloc
        - Src:             'ccmarshal.c:165,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:171,54'
          Dst:             get32
        - Src:             'ccmarshal.c:172,14'
          Dst:             get32
        - Src:             'ccmarshal.c:180,23'
          Dst:             k5calloc
        - Src:             'ccmarshal.c:185,5'
          Dst:             get_data
        - Src:             'ccmarshal.c:187,9'
          Dst:             get_data
        - Src:             'ccmarshal.c:191,5'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:192,5'
          Dst:             krb5_free_principal
    - functionName:    unmarshal_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get16
        - get_len_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:202,28'
          Dst:             get16
        - Src:             'ccmarshal.c:205,15'
          Dst:             get16
        - Src:             'ccmarshal.c:206,20'
          Dst:             get_len_bytes
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    unmarshal_addrs
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - get32
        - k5_input_set_status
        - unmarshal_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:231,13'
          Dst:             get32
        - Src:             'ccmarshal.c:233,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:236,13'
          Dst:             calloc
        - Src:             'ccmarshal.c:238,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:242,20'
          Dst:             unmarshal_addr
    - functionName:    unmarshal_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - get32
        - k5_input_set_status
        - unmarshal_authdatum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:269,13'
          Dst:             get32
        - Src:             'ccmarshal.c:271,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:274,16'
          Dst:             calloc
        - Src:             'ccmarshal.c:276,9'
          Dst:             k5_input_set_status
        - Src:             'ccmarshal.c:280,23'
          Dst:             unmarshal_authdatum
    - functionName:    get_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - empty_data
        - get_len_bytes
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:151,19'
          Dst:             get_len_bytes
        - Src:             'ccmarshal.c:153,31'
          Dst:             empty_data
        - Src:             'ccmarshal.c:153,46'
          Dst:             make_data
    - functionName:    krb5_marshal_credentials
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_buf_init_dynamic
        - k5_buf_status
        - k5_marshal_cred
        - k5alloc
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:529,12'
          Dst:             k5alloc
        - Src:             'ccmarshal.c:533,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'ccmarshal.c:534,5'
          Dst:             k5_marshal_cred
        - Src:             'ccmarshal.c:536,11'
          Dst:             k5_buf_status
        - Src:             'ccmarshal.c:543,13'
          Dst:             make_data
    - functionName:    k5_marshal_cred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          98
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - k5_marshal_princ
        - marshal_addrs
        - marshal_authdata
        - marshal_keyblock
        - put32
        - put_data
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:434,5'
          Dst:             k5_marshal_princ
        - Src:             'ccmarshal.c:435,5'
          Dst:             k5_marshal_princ
        - Src:             'ccmarshal.c:436,5'
          Dst:             marshal_keyblock
        - Src:             'ccmarshal.c:437,5'
          Dst:             put32
        - Src:             'ccmarshal.c:438,5'
          Dst:             put32
        - Src:             'ccmarshal.c:439,5'
          Dst:             put32
        - Src:             'ccmarshal.c:440,5'
          Dst:             put32
        - Src:             'ccmarshal.c:442,5'
          Dst:             k5_buf_add_len
        - Src:             'ccmarshal.c:443,5'
          Dst:             put32
        - Src:             'ccmarshal.c:444,5'
          Dst:             marshal_addrs
        - Src:             'ccmarshal.c:445,5'
          Dst:             marshal_authdata
        - Src:             'ccmarshal.c:446,5'
          Dst:             put_data
        - Src:             'ccmarshal.c:447,5'
          Dst:             put_data
    - functionName:    k5_marshal_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - put32
        - put_data
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:382,9'
          Dst:             put32
        - Src:             'ccmarshal.c:384,5'
          Dst:             put32
        - Src:             'ccmarshal.c:385,5'
          Dst:             put_data
        - Src:             'ccmarshal.c:387,9'
          Dst:             put_data
    - functionName:    marshal_keyblock
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put16
        - put_len_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:393,5'
          Dst:             put16
        - Src:             'ccmarshal.c:396,9'
          Dst:             put16
        - Src:             'ccmarshal.c:397,5'
          Dst:             put_len_bytes
    - functionName:    marshal_addrs
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - put16
        - put32
        - put_len_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:406,5'
          Dst:             put32
        - Src:             'ccmarshal.c:408,9'
          Dst:             put16
        - Src:             'ccmarshal.c:409,9'
          Dst:             put_len_bytes
    - functionName:    marshal_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - put16
        - put32
        - put_len_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:419,5'
          Dst:             put32
        - Src:             'ccmarshal.c:421,9'
          Dst:             put16
        - Src:             'ccmarshal.c:422,9'
          Dst:             put_len_bytes
    - functionName:    put_data
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_len_bytes
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:371,5'
          Dst:             put_len_bytes
    - functionName:    mcred_header
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          147
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_marshal_mcred
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          210
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - k5_buf_add_len
        - k5_marshal_princ
        - marshal_addrs
        - marshal_authdata
        - marshal_keyblock
        - mcred_header
        - put32
        - put_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:494,14'
          Dst:             mcred_header
        - Src:             'ccmarshal.c:495,5'
          Dst:             put32
        - Src:             'ccmarshal.c:497,9'
          Dst:             k5_marshal_princ
        - Src:             'ccmarshal.c:499,9'
          Dst:             k5_marshal_princ
        - Src:             'ccmarshal.c:501,9'
          Dst:             marshal_keyblock
        - Src:             'ccmarshal.c:502,5'
          Dst:             put32
        - Src:             'ccmarshal.c:503,5'
          Dst:             put32
        - Src:             'ccmarshal.c:504,5'
          Dst:             put32
        - Src:             'ccmarshal.c:505,5'
          Dst:             put32
        - Src:             'ccmarshal.c:507,5'
          Dst:             k5_buf_add_len
        - Src:             'ccmarshal.c:508,5'
          Dst:             put32
        - Src:             'ccmarshal.c:510,9'
          Dst:             marshal_addrs
        - Src:             'ccmarshal.c:512,9'
          Dst:             marshal_authdata
        - Src:             'ccmarshal.c:514,9'
          Dst:             put_data
        - Src:             'ccmarshal.c:516,9'
          Dst:             put_data
    - functionName:    k5_unmarshal_princ
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/ccmarshal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_init
        - krb5_free_principal
        - unmarshal_princ
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ccmarshal.c:323,5'
          Dst:             k5_input_init
        - Src:             'ccmarshal.c:324,13'
          Dst:             unmarshal_princ
        - Src:             'ccmarshal.c:326,9'
          Dst:             krb5_free_principal
    - functionName:    pref
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    ts_after
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2372
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_cc_retrieve_cred_seq
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          173
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - krb5_cc_end_seq_get
        - krb5_cc_next_cred
        - krb5_cc_start_seq_get
        - krb5_free_cred_contents
        - krb5int_cc_creds_match_request
        - pref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:213,12'
          Dst:             krb5_cc_start_seq_get
        - Src:             'cc_retr.c:217,12'
          Dst:             krb5_cc_next_cred
        - Src:             'cc_retr.c:218,13'
          Dst:             krb5int_cc_creds_match_request
        - Src:             'cc_retr.c:221,32'
          Dst:             pref
        - Src:             'cc_retr.c:227,25'
          Dst:             krb5_free_cred_contents
        - Src:             'cc_retr.c:234,17'
          Dst:             krb5_cc_end_seq_get
        - Src:             'cc_retr.c:241,9'
          Dst:             krb5_free_cred_contents
        - Src:             'cc_retr.c:245,5'
          Dst:             krb5_cc_end_seq_get
    - functionName:    krb5int_cc_creds_match_request
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          260
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - authdata_match
        - data_match
        - princs_match
        - times_match
        - times_match_exact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:157,10'
          Dst:             princs_match
        - Src:             'cc_retr.c:174,10'
          Dst:             times_match_exact
        - Src:             'cc_retr.c:177,10'
          Dst:             times_match
        - Src:             'cc_retr.c:181,10'
          Dst:             authdata_match
        - Src:             'cc_retr.c:185,10'
          Dst:             data_match
    - functionName:    princs_match
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_principal_compare
        - krb5_principal_compare_any_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:62,10'
          Dst:             krb5_principal_compare
        - Src:             'cc_retr.c:67,16'
          Dst:             krb5_principal_compare_any_realm
        - Src:             'cc_retr.c:70,16'
          Dst:             krb5_principal_compare
    - functionName:    times_match_exact
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    times_match
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ts_after
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:46,13'
          Dst:             ts_after
        - Src:             'cc_retr.c:50,13'
          Dst:             ts_after
    - functionName:    authdata_match
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          146
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:91,14'
          Dst:             memcmp
    - functionName:    data_match
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - data_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:111,12'
          Dst:             data_eq
    - functionName:    k5_cc_retrieve_cred_default
      functionSourceFile: '/src/krb5/src/lib/krb5/ccache/cc_retr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_count_etypes
        - krb5_cc_retrieve_cred_seq
        - krb5_get_tgs_ktypes
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cc_retr.c:263,15'
          Dst:             krb5_get_tgs_ktypes
        - Src:             'cc_retr.c:266,19'
          Dst:             k5_count_etypes
        - Src:             'cc_retr.c:268,15'
          Dst:             krb5_cc_retrieve_cred_seq
        - Src:             'cc_retr.c:273,16'
          Dst:             krb5_cc_retrieve_cred_seq
    - functionName:    krb5_address_compare
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/addr_comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'addr_comp.c:40,9'
          Dst:             memcmp
    - functionName:    address_count
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/addr_srch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_address_search
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/addr_srch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          84
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - address_count
        - krb5_address_compare
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'addr_srch.c:55,9'
          Dst:             address_count
        - Src:             'addr_srch.c:61,13'
          Dst:             krb5_address_compare
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    authind_internalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          177
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - alloc_data
        - k5_free_data_ptr_list
        - k5_ser_unpack_len
        - k5alloc
        - k5calloc
        - krb5_ser_unpack_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:267,11'
          Dst:             k5_ser_unpack_len
        - Src:             'ai_authdata.c:272,16'
          Dst:             k5calloc
        - Src:             'ai_authdata.c:274,20'
          Dst:             __errno_location
        - Src:             'ai_authdata.c:279,15'
          Dst:             k5_ser_unpack_len
        - Src:             'ai_authdata.c:284,19'
          Dst:             k5alloc
        - Src:             'ai_authdata.c:287,15'
          Dst:             alloc_data
        - Src:             'ai_authdata.c:290,15'
          Dst:             krb5_ser_unpack_bytes
        - Src:             'ai_authdata.c:296,5'
          Dst:             k5_free_data_ptr_list
        - Src:             'ai_authdata.c:304,5'
          Dst:             k5_free_data_ptr_list
    - functionName:    authind_externalize
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          164
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - krb5_ser_pack_bytes
        - krb5_ser_pack_int32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:230,16'
          Dst:             krb5_ser_pack_int32
        - Src:             'ai_authdata.c:234,11'
          Dst:             krb5_ser_pack_int32
        - Src:             'ai_authdata.c:240,15'
          Dst:             krb5_ser_pack_int32
        - Src:             'ai_authdata.c:243,15'
          Dst:             krb5_ser_pack_bytes
    - functionName:    authind_size
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    authind_import_authdata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - k5_authind_decode
        - k5_free_data_ptr_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:85,15'
          Dst:             k5_authind_decode
        - Src:             'ai_authdata.c:96,5'
          Dst:             k5_free_data_ptr_list
    - functionName:    authind_set_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - data_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:195,10'
          Dst:             data_eq
    - functionName:    authind_get_attribute
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          146
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - data_eq
        - krb5int_copy_data_contents
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:164,10'
          Dst:             data_eq
        - Src:             'ai_authdata.c:173,11'
          Dst:             krb5int_copy_data_contents
    - functionName:    authind_get_attribute_types
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5calloc
        - krb5int_copy_data_contents
        - krb5int_free_data_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:134,13'
          Dst:             k5calloc
        - Src:             'ai_authdata.c:138,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'ai_authdata.c:149,5'
          Dst:             krb5int_free_data_list
    - functionName:    authind_request_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_free_data_ptr_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:107,9'
          Dst:             k5_free_data_ptr_list
    - functionName:    authind_request_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ai_authdata.c:65,13'
          Dst:             k5alloc
    - functionName:    authind_flags
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    authind_init
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/ai_authdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_svcver
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/cammac_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - encode_krb5_authdata
        - krb5_c_verify_checksum
        - krb5_free_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cammac_util.c:48,11'
          Dst:             encode_krb5_authdata
        - Src:             'cammac_util.c:52,11'
          Dst:             krb5_c_verify_checksum
        - Src:             'cammac_util.c:57,5'
          Dst:             krb5_free_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_unwrap_cammac_svc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/cammac_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - check_svcver
        - decode_krb5_cammac
        - k5_free_cammac
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cammac_util.c:73,15'
          Dst:             make_data
        - Src:             'cammac_util.c:74,11'
          Dst:             decode_krb5_cammac
        - Src:             'cammac_util.c:78,11'
          Dst:             check_svcver
        - Src:             'cammac_util.c:84,5'
          Dst:             k5_free_cammac
    - functionName:    krb5_make_authdata_kdc_issued
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_enc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - encode_krb5_ad_kdcissued
        - encode_krb5_authdata
        - krb5_c_is_keyed_cksum
        - krb5_c_make_checksum
        - krb5_copy_authdata
        - krb5_free_checksum_contents
        - krb5_free_data
        - krb5int_c_mandatory_cksumtype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_enc.c:107,12'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'authdata_enc.c:112,10'
          Dst:             krb5_c_is_keyed_cksum
        - Src:             'authdata_enc.c:115,12'
          Dst:             encode_krb5_authdata
        - Src:             'authdata_enc.c:119,12'
          Dst:             krb5_c_make_checksum
        - Src:             'authdata_enc.c:123,9'
          Dst:             krb5_free_data
        - Src:             'authdata_enc.c:127,5'
          Dst:             krb5_free_data
        - Src:             'authdata_enc.c:129,12'
          Dst:             encode_krb5_ad_kdcissued
        - Src:             'authdata_enc.c:140,12'
          Dst:             krb5_copy_authdata
        - Src:             'authdata_enc.c:142,5'
          Dst:             krb5_free_data
        - Src:             'authdata_enc.c:143,5'
          Dst:             krb5_free_checksum_contents
    - functionName:    krb5_encode_authdata_container
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/authdata_enc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_krb5_authdata
        - krb5_copy_authdata
        - krb5_free_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'authdata_enc.c:69,12'
          Dst:             encode_krb5_authdata
        - Src:             'authdata_enc.c:80,12'
          Dst:             krb5_copy_authdata
        - Src:             'authdata_enc.c:82,5'
          Dst:             krb5_free_data
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    process_intermediates
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chk_trans.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          300
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'chk_trans.c:70,13'
          Dst:             memcmp
        - Src:             'chk_trans.c:91,13'
          Dst:             memcmp
        - Src:             'chk_trans.c:114,13'
          Dst:             memcmp
    - functionName:    maybe_join
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chk_trans.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          152
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_realm_in_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chk_trans.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - data_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chk_trans.c:301,13'
          Dst:             data_eq
    - functionName:    foreach_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chk_trans.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          423
      EdgeCount:       91
      CyclomaticComplexity: 26
      functionsReached:
        - maybe_join
        - process_intermediates
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chk_trans.c:218,21'
          Dst:             maybe_join
        - Src:             'chk_trans.c:226,29'
          Dst:             process_intermediates
        - Src:             'chk_trans.c:229,29'
          Dst:             process_intermediates
        - Src:             'chk_trans.c:269,13'
          Dst:             process_intermediates
        - Src:             'chk_trans.c:273,13'
          Dst:             maybe_join
        - Src:             'chk_trans.c:280,17'
          Dst:             process_intermediates
    - functionName:    krb5_check_transited_list
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chk_trans.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          149
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - check_realm_in_list
        - foreach_realm
        - krb5_anonymous_realm
        - krb5_free_realm_tree
        - krb5_walk_realm_tree
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chk_trans.c:328,17'
          Dst:             krb5_anonymous_realm
        - Src:             'chk_trans.c:330,10'
          Dst:             memcmp
        - Src:             'chk_trans.c:333,9'
          Dst:             krb5_walk_realm_tree
        - Src:             'chk_trans.c:353,9'
          Dst:             foreach_realm
        - Src:             'chk_trans.c:353,9'
          Dst:             check_realm_in_list
        - Src:             'chk_trans.c:354,5'
          Dst:             krb5_free_realm_tree
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_spaces
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:386,9'
          Dst:             k5_buf_add
    - functionName:    load_64_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:615,12'
          Dst:             __bswap_64
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_error_edata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_copy_data
        - krb5_free_error
        - krb5_rd_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:87,11'
          Dst:             krb5_rd_error
        - Src:             'chpw.c:97,11'
          Dst:             krb5_copy_data
        - Src:             'chpw.c:100,5'
          Dst:             krb5_free_error
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    decode_ad_policy_info
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          230
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - add_spaces
        - dgettext
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - load_16_be
        - load_32_be
        - load_64_be
        - ngettext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:403,25'
          Dst:             load_16_be
        - Src:             'chpw.c:411,34'
          Dst:             load_32_be
        - Src:             'chpw.c:413,31'
          Dst:             load_32_be
        - Src:             'chpw.c:415,34'
          Dst:             load_32_be
        - Src:             'chpw.c:417,21'
          Dst:             load_64_be
        - Src:             'chpw.c:419,30'
          Dst:             load_64_be
        - Src:             'chpw.c:423,5'
          Dst:             __assert_fail
        - Src:             'chpw.c:425,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'chpw.c:432,26'
          Dst:             dgettext
        - Src:             'chpw.c:432,9'
          Dst:             k5_buf_add
        - Src:             'chpw.c:437,9'
          Dst:             add_spaces
        - Src:             'chpw.c:438,30'
          Dst:             ngettext
        - Src:             'chpw.c:438,9'
          Dst:             k5_buf_add_fmt
        - Src:             'chpw.c:446,9'
          Dst:             add_spaces
        - Src:             'chpw.c:447,30'
          Dst:             ngettext
        - Src:             'chpw.c:447,9'
          Dst:             k5_buf_add_fmt
        - Src:             'chpw.c:458,9'
          Dst:             add_spaces
        - Src:             'chpw.c:459,30'
          Dst:             ngettext
        - Src:             'chpw.c:459,9'
          Dst:             k5_buf_add_fmt
        - Src:             'chpw.c:466,11'
          Dst:             k5_buf_cstring
    - functionName:    ngettext
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_chpw_message
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - decode_ad_policy_info
        - dgettext
        - k5_utf8_validate
        - k5memdup0
        - memchr
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:487,11'
          Dst:             decode_ad_policy_info
        - Src:             'chpw.c:495,9'
          Dst:             memchr
        - Src:             'chpw.c:496,9'
          Dst:             k5_utf8_validate
        - Src:             'chpw.c:497,24'
          Dst:             k5memdup0
        - Src:             'chpw.c:503,18'
          Dst:             dgettext
        - Src:             'chpw.c:503,11'
          Dst:             strdup
    - functionName:    krb5int_mk_setpw_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          222
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - encode_krb5_setpw_req
        - krb5_auth_con_setflags
        - krb5_free_data
        - krb5_free_data_contents
        - krb5_mk_priv
        - store_16_be
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:299,16'
          Dst:             krb5_auth_con_setflags
        - Src:             'chpw.c:304,20'
          Dst:             string2data
        - Src:             'chpw.c:305,11'
          Dst:             encode_krb5_setpw_req
        - Src:             'chpw.c:310,16'
          Dst:             krb5_mk_priv
        - Src:             'chpw.c:311,9'
          Dst:             krb5_free_data
        - Src:             'chpw.c:314,5'
          Dst:             krb5_free_data
        - Src:             'chpw.c:328,5'
          Dst:             store_16_be
        - Src:             'chpw.c:334,5'
          Dst:             store_16_be
        - Src:             'chpw.c:346,9'
          Dst:             krb5_free_data_contents
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    store_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:542,5'
          Dst:             __bswap_16
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_chpw_result_code_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - dgettext
      functionUses:    1
      BranchProfiles:
        - Branch String:   'chpw.c:248,5'
          Branch Sides:    []
      Callsites:
        - Src:             'chpw.c:250,24'
          Dst:             dgettext
        - Src:             'chpw.c:253,24'
          Dst:             dgettext
        - Src:             'chpw.c:256,24'
          Dst:             dgettext
        - Src:             'chpw.c:259,24'
          Dst:             dgettext
        - Src:             'chpw.c:262,24'
          Dst:             dgettext
        - Src:             'chpw.c:265,24'
          Dst:             dgettext
        - Src:             'chpw.c:268,24'
          Dst:             dgettext
        - Src:             'chpw.c:271,24'
          Dst:             dgettext
        - Src:             'chpw.c:274,24'
          Dst:             dgettext
    - functionName:    get_clear_result
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          356
      EdgeCount:       49
      CyclomaticComplexity: 16
      functionsReached:
        - empty_data
        - get_error_edata
        - krb5_auth_con_getsendsubkey_k
        - krb5_auth_con_setrecvsubkey_k
        - krb5_copy_data
        - krb5_free_ap_rep_enc_part
        - krb5_free_data_contents
        - krb5_k_free_key
        - krb5_rd_priv
        - krb5_rd_rep
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:117,23'
          Dst:             empty_data
        - Src:             'chpw.c:126,16'
          Dst:             get_error_edata
        - Src:             'chpw.c:155,17'
          Dst:             make_data
        - Src:             'chpw.c:156,16'
          Dst:             get_error_edata
        - Src:             'chpw.c:160,11'
          Dst:             krb5_auth_con_getsendsubkey_k
        - Src:             'chpw.c:165,14'
          Dst:             make_data
        - Src:             'chpw.c:167,11'
          Dst:             krb5_rd_rep
        - Src:             'chpw.c:170,5'
          Dst:             krb5_free_ap_rep_enc_part
        - Src:             'chpw.c:173,11'
          Dst:             krb5_auth_con_setrecvsubkey_k
        - Src:             'chpw.c:178,14'
          Dst:             make_data
        - Src:             'chpw.c:179,11'
          Dst:             krb5_rd_priv
        - Src:             'chpw.c:183,11'
          Dst:             krb5_copy_data
        - Src:             'chpw.c:189,5'
          Dst:             krb5_k_free_key
        - Src:             'chpw.c:190,5'
          Dst:             krb5_free_data_contents
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_rd_chpw_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          176
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - empty_data
        - get_clear_result
        - krb5_free_data
        - krb5int_copy_data_contents
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:206,24'
          Dst:             empty_data
        - Src:             'chpw.c:208,11'
          Dst:             get_clear_result
        - Src:             'chpw.c:233,19'
          Dst:             make_data
        - Src:             'chpw.c:234,11'
          Dst:             krb5int_copy_data_contents
        - Src:             'chpw.c:240,5'
          Dst:             krb5_free_data
    - functionName:    krb5int_mk_chpw_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/chpw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          160
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_auth_con_setflags
        - krb5_mk_priv
        - store_16_be
        - string2data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'chpw.c:27,16'
          Dst:             krb5_auth_con_setflags
        - Src:             'chpw.c:31,15'
          Dst:             string2data
        - Src:             'chpw.c:33,16'
          Dst:             krb5_mk_priv
        - Src:             'chpw.c:47,5'
          Dst:             store_16_be
        - Src:             'chpw.c:57,5'
          Dst:             store_16_be
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    copy_enc_tkt_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_tick.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          240
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - k5memdup
        - krb5_copy_addresses
        - krb5_copy_authdata
        - krb5_copy_keyblock
        - krb5_copy_principal
        - krb5_free_addresses
        - krb5_free_keyblock
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_tick.c:39,14'
          Dst:             krb5_copy_keyblock
        - Src:             'copy_tick.c:45,14'
          Dst:             krb5_copy_principal
        - Src:             'copy_tick.c:47,9'
          Dst:             krb5_free_keyblock
        - Src:             'copy_tick.c:56,13'
          Dst:             k5memdup
        - Src:             'copy_tick.c:59,13'
          Dst:             krb5_free_principal
        - Src:             'copy_tick.c:60,13'
          Dst:             krb5_free_keyblock
        - Src:             'copy_tick.c:66,14'
          Dst:             krb5_copy_addresses
        - Src:             'copy_tick.c:69,9'
          Dst:             krb5_free_principal
        - Src:             'copy_tick.c:70,9'
          Dst:             krb5_free_keyblock
        - Src:             'copy_tick.c:75,18'
          Dst:             krb5_copy_authdata
        - Src:             'copy_tick.c:78,13'
          Dst:             krb5_free_addresses
        - Src:             'copy_tick.c:80,13'
          Dst:             krb5_free_principal
        - Src:             'copy_tick.c:81,13'
          Dst:             krb5_free_keyblock
    - functionName:    krb5_copy_ticket
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/copy_tick.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          123
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - copy_enc_tkt_part
        - krb5_copy_data
        - krb5_copy_principal
        - krb5_free_principal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'copy_tick.c:100,14'
          Dst:             krb5_copy_principal
        - Src:             'copy_tick.c:105,14'
          Dst:             krb5_copy_data
        - Src:             'copy_tick.c:107,9'
          Dst:             krb5_free_principal
        - Src:             'copy_tick.c:113,14'
          Dst:             copy_enc_tkt_part
        - Src:             'copy_tick.c:116,9'
          Dst:             krb5_free_principal
    - functionName:    krb5int_decode_tgs_rep
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/decode_kdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          187
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - decode_krb5_as_rep
        - decode_krb5_tgs_rep
        - krb5_free_kdc_rep
        - krb5_free_keyblock
        - krb5_free_keyblock_contents
        - krb5_kdc_rep_decrypt_proc
        - krb5int_fast_process_response
        - krb5int_fast_reply_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'decode_kdc.c:56,18'
          Dst:             decode_krb5_as_rep
        - Src:             'decode_kdc.c:58,18'
          Dst:             decode_krb5_tgs_rep
        - Src:             'decode_kdc.c:64,14'
          Dst:             krb5int_fast_process_response
        - Src:             'decode_kdc.c:70,14'
          Dst:             krb5int_fast_reply_key
        - Src:             'decode_kdc.c:74,14'
          Dst:             krb5_kdc_rep_decrypt_proc
        - Src:             'decode_kdc.c:82,5'
          Dst:             krb5_free_kdc_rep
        - Src:             'decode_kdc.c:83,5'
          Dst:             krb5_free_keyblock
        - Src:             'decode_kdc.c:84,5'
          Dst:             krb5_free_keyblock_contents
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    krb5_decrypt_tkt_part
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/decrypt_tk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - decode_krb5_enc_tkt_part
        - krb5_c_decrypt
        - krb5_c_valid_enctype
        - krb5_is_permitted_enctype
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'decrypt_tk.c:46,10'
          Dst:             krb5_c_valid_enctype
        - Src:             'decrypt_tk.c:49,10'
          Dst:             krb5_is_permitted_enctype
        - Src:             'decrypt_tk.c:57,19'
          Dst:             krb5_c_decrypt
        - Src:             'decrypt_tk.c:65,14'
          Dst:             decode_krb5_enc_tkt_part
        - Src:             'decrypt_tk.c:69,5'
          Dst:             zapfree
    - functionName:    yydestruct
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/deltat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mylex
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/x-deltat.y'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          242
      EdgeCount:       43
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x-deltat.y:189,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x-deltat.y:209,9'
          Dst:             __ctype_b_loc
        - Src:             'x-deltat.y:222,9'
          Dst:             __ctype_b_loc
    - functionName:    yyparse
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/deltat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1067
      functionLinenumberEnd: 1626
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         394
      ICount:          2379
      EdgeCount:       531
      CyclomaticComplexity: 139
      functionsReached:
        - mylex
        - yydestruct
      functionUses:    1
      BranchProfiles:
        - Branch String:   'deltat.c:1311,3'
          Branch Sides:    []
      Callsites:
        - Src:             'deltat.c:1235,16'
          Dst:             mylex
        - Src:             'deltat.c:1500,11'
          Dst:             yydestruct
        - Src:             'deltat.c:1556,7'
          Dst:             yydestruct
        - Src:             'deltat.c:1605,7'
          Dst:             yydestruct
        - Src:             'deltat.c:1614,7'
          Dst:             yydestruct
    - functionName:    krb5_string_to_deltat
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/x-deltat.y'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - yyparse
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x-deltat.y:236,9'
          Dst:             yyparse
    - functionName:    krb5_encrypt_helper
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/enc_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          94
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_c_encrypt
        - krb5_c_encrypt_length
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_helper.c:39,16'
          Dst:             krb5_c_encrypt_length
        - Src:             'enc_helper.c:46,11'
          Dst:             krb5_c_encrypt
    - functionName:    k5_encrypt_keyhelper
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/enc_keyhelper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_c_encrypt_length
        - krb5_k_encrypt
        - krb5_k_key_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_keyhelper.c:40,15'
          Dst:             krb5_k_key_enctype
        - Src:             'enc_keyhelper.c:41,11'
          Dst:             krb5_c_encrypt_length
        - Src:             'enc_keyhelper.c:49,11'
          Dst:             krb5_k_encrypt
    - functionName:    k5_upgrade_to_fast_p
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_find_pa_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:693,9'
          Dst:             krb5int_find_pa_data
    - functionName:    krb5int_fast_verify_nego
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          192
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - decode_krb5_checksum
        - krb5_c_verify_checksum
        - krb5_free_checksum
        - krb5int_find_pa_data
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:656,14'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:665,22'
          Dst:             decode_krb5_checksum
        - Src:             'fast.c:667,22'
          Dst:             krb5_c_verify_checksum
        - Src:             'fast.c:673,18'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:678,5'
          Dst:             krb5int_trace
        - Src:             'fast.c:680,9'
          Dst:             krb5_free_checksum
    - functionName:    krb5int_fast_free_state
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_free_fast_armor
        - krb5_free_keyblock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:623,5'
          Dst:             krb5_free_keyblock
        - Src:             'fast.c:624,5'
          Dst:             krb5_free_fast_armor
    - functionName:    krb5int_fast_make_state
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_fast_reply_key
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_c_fx_cf2_simple
        - krb5_copy_keyblock_contents
        - krb5_free_keyblock_contents
        - krb5int_trace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:584,5'
          Dst:             krb5_free_keyblock_contents
        - Src:             'fast.c:586,18'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'fast.c:591,13'
          Dst:             krb5int_trace
        - Src:             'fast.c:596,18'
          Dst:             krb5_copy_keyblock_contents
    - functionName:    krb5int_fast_process_response
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          224
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - decrypt_fast_reply
        - dgettext
        - encode_krb5_ticket
        - krb5_c_verify_checksum
        - krb5_clear_error_message
        - krb5_free_data
        - krb5_free_fast_response
        - krb5_free_pa_data
        - krb5_free_principal
        - krb5_set_error_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:534,5'
          Dst:             krb5_clear_error_message
        - Src:             'fast.c:538,14'
          Dst:             decrypt_fast_reply
        - Src:             'fast.c:544,23'
          Dst:             dgettext
        - Src:             'fast.c:543,13'
          Dst:             krb5_set_error_message
        - Src:             'fast.c:548,18'
          Dst:             encode_krb5_ticket
        - Src:             'fast.c:550,18'
          Dst:             krb5_c_verify_checksum
        - Src:             'fast.c:557,36'
          Dst:             dgettext
        - Src:             'fast.c:557,9'
          Dst:             krb5_set_error_message
        - Src:             'fast.c:560,9'
          Dst:             krb5_free_principal
        - Src:             'fast.c:565,9'
          Dst:             krb5_free_pa_data
        - Src:             'fast.c:570,9'
          Dst:             krb5_free_fast_response
        - Src:             'fast.c:572,9'
          Dst:             krb5_free_data
    - functionName:    decrypt_fast_reply
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          283
      EdgeCount:       67
      CyclomaticComplexity: 16
      functionsReached:
        - __assert_fail
        - decode_krb5_fast_response
        - decode_krb5_pa_fx_fast_reply
        - dgettext
        - krb5_c_decrypt
        - krb5_free_enc_data
        - krb5_free_fast_response
        - krb5_prepend_error_message
        - krb5_set_error_message
        - krb5int_find_pa_data
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:378,5'
          Dst:             __assert_fail
        - Src:             'fast.c:379,5'
          Dst:             __assert_fail
        - Src:             'fast.c:380,16'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:383,5'
          Dst:             krb5int_trace
        - Src:             'fast.c:387,18'
          Dst:             decode_krb5_pa_fx_fast_reply
        - Src:             'fast.c:397,18'
          Dst:             krb5_c_decrypt
        - Src:             'fast.c:401,40'
          Dst:             dgettext
        - Src:             'fast.c:401,9'
          Dst:             krb5_prepend_error_message
        - Src:             'fast.c:403,18'
          Dst:             decode_krb5_fast_response
        - Src:             'fast.c:407,40'
          Dst:             dgettext
        - Src:             'fast.c:407,13'
          Dst:             krb5_set_error_message
        - Src:             'fast.c:418,9'
          Dst:             krb5_free_enc_data
        - Src:             'fast.c:420,9'
          Dst:             krb5_free_fast_response
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_fast_process_error
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          319
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - decode_krb5_error
        - decode_krb5_padata_sequence
        - decode_krb5_typed_data
        - decrypt_fast_reply
        - dgettext
        - empty_data
        - krb5_free_error
        - krb5_free_fast_response
        - krb5_free_pa_data
        - krb5_set_error_message
        - krb5int_find_pa_data
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:443,25'
          Dst:             empty_data
        - Src:             'fast.c:453,18'
          Dst:             decode_krb5_padata_sequence
        - Src:             'fast.c:455,22'
          Dst:             decrypt_fast_reply
        - Src:             'fast.c:465,13'
          Dst:             krb5_free_pa_data
        - Src:             'fast.c:469,27'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:473,27'
          Dst:             dgettext
        - Src:             'fast.c:472,17'
          Dst:             krb5_set_error_message
        - Src:             'fast.c:479,23'
          Dst:             make_data
        - Src:             'fast.c:480,22'
          Dst:             decode_krb5_error
        - Src:             'fast.c:483,13'
          Dst:             krb5_free_error
        - Src:             'fast.c:496,21'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:507,22'
          Dst:             decode_krb5_padata_sequence
        - Src:             'fast.c:510,23'
          Dst:             decode_krb5_typed_data
        - Src:             'fast.c:515,5'
          Dst:             krb5_free_pa_data
        - Src:             'fast.c:516,5'
          Dst:             krb5_free_fast_response
        - Src:             'fast.c:518,9'
          Dst:             krb5_free_error
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_tgs_outer_padata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:249,15'
          Dst:             calloc
    - functionName:    krb5int_fast_prep_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          522
      EdgeCount:       107
      CyclomaticComplexity: 26
      functionsReached:
        - __assert_fail
        - calloc
        - encode_krb5_fast_req
        - encode_krb5_pa_fx_fast_request
        - krb5_c_make_checksum
        - krb5_encrypt_helper
        - krb5_free_data
        - krb5_free_fast_armored_req
        - krb5int_find_pa_data
        - krb5int_trace
        - make_tgs_outer_padata
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:279,5'
          Dst:             __assert_fail
        - Src:             'fast.c:280,5'
          Dst:             __assert_fail
        - Src:             'fast.c:286,5'
          Dst:             krb5int_trace
        - Src:             'fast.c:290,37'
          Dst:             calloc
        - Src:             'fast.c:296,19'
          Dst:             krb5int_find_pa_data
        - Src:             'fast.c:308,18'
          Dst:             encode_krb5_fast_req
        - Src:             'fast.c:310,23'
          Dst:             calloc
        - Src:             'fast.c:317,18'
          Dst:             krb5_c_make_checksum
        - Src:             'fast.c:322,18'
          Dst:             krb5_encrypt_helper
        - Src:             'fast.c:326,18'
          Dst:             encode_krb5_pa_fx_fast_request
        - Src:             'fast.c:333,22'
          Dst:             make_tgs_outer_padata
        - Src:             'fast.c:348,9'
          Dst:             krb5_free_data
        - Src:             'fast.c:351,9'
          Dst:             krb5_free_fast_armored_req
        - Src:             'fast.c:354,9'
          Dst:             krb5_free_data
        - Src:             'fast.c:356,9'
          Dst:             krb5_free_data
    - functionName:    krb5int_fast_as_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          255
      EdgeCount:       55
      CyclomaticComplexity: 14
      functionsReached:
        - dgettext
        - empty_data
        - fast_armor_ap_request
        - k5_gic_opt_get_fast_ccache_name
        - k5_gic_opt_get_fast_flags
        - krb5_cc_close
        - krb5_cc_get_config
        - krb5_cc_resolve
        - krb5_clear_error_message
        - krb5_free_data_contents
        - krb5_free_principal
        - krb5_prepend_error_message
        - krb5int_tgtname
        - krb5int_trace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:180,44'
          Dst:             empty_data
        - Src:             'fast.c:181,26'
          Dst:             k5_gic_opt_get_fast_ccache_name
        - Src:             'fast.c:184,5'
          Dst:             krb5_clear_error_message
        - Src:             'fast.c:193,18'
          Dst:             krb5_cc_resolve
        - Src:             'fast.c:199,5'
          Dst:             krb5int_trace
        - Src:             'fast.c:202,14'
          Dst:             krb5int_tgtname
        - Src:             'fast.c:207,14'
          Dst:             krb5_cc_get_config
        - Src:             'fast.c:210,9'
          Dst:             krb5int_trace
        - Src:             'fast.c:214,18'
          Dst:             k5_gic_opt_get_fast_flags
        - Src:             'fast.c:216,9'
          Dst:             krb5int_trace
        - Src:             'fast.c:220,14'
          Dst:             fast_armor_ap_request
        - Src:             'fast.c:223,40'
          Dst:             dgettext
        - Src:             'fast.c:223,9'
          Dst:             krb5_prepend_error_message
        - Src:             'fast.c:227,9'
          Dst:             krb5_cc_close
        - Src:             'fast.c:228,5'
          Dst:             krb5_free_principal
        - Src:             'fast.c:229,5'
          Dst:             krb5_free_data_contents
    - functionName:    fast_armor_ap_request
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          244
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - calloc
        - krb5_auth_con_free
        - krb5_auth_con_getsendsubkey
        - krb5_c_fx_cf2_simple
        - krb5_cc_get_principal
        - krb5_free_cred_contents
        - krb5_free_creds
        - krb5_free_data_contents
        - krb5_free_keyblock
        - krb5_get_credentials
        - krb5_mk_req_extended
        - krb5int_trace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:66,14'
          Dst:             krb5_cc_get_principal
        - Src:             'fast.c:68,18'
          Dst:             krb5_get_credentials
        - Src:             'fast.c:70,9'
          Dst:             krb5int_trace
        - Src:             'fast.c:71,18'
          Dst:             krb5_mk_req_extended
        - Src:             'fast.c:76,18'
          Dst:             krb5_auth_con_getsendsubkey
        - Src:             'fast.c:78,18'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'fast.c:82,9'
          Dst:             krb5int_trace
        - Src:             'fast.c:83,17'
          Dst:             calloc
        - Src:             'fast.c:97,5'
          Dst:             krb5_free_keyblock
        - Src:             'fast.c:98,5'
          Dst:             krb5_free_keyblock
        - Src:             'fast.c:100,9'
          Dst:             krb5_free_creds
        - Src:             'fast.c:103,5'
          Dst:             krb5_free_cred_contents
        - Src:             'fast.c:105,9'
          Dst:             krb5_free_data_contents
        - Src:             'fast.c:106,5'
          Dst:             krb5_auth_con_free
    - functionName:    krb5int_fast_prep_req_body
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - encode_krb5_kdc_req_body
        - krb5_free_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:153,5'
          Dst:             __assert_fail
        - Src:             'fast.c:156,16'
          Dst:             encode_krb5_kdc_req_body
        - Src:             'fast.c:160,18'
          Dst:             encode_krb5_kdc_req_body
        - Src:             'fast.c:167,9'
          Dst:             krb5_free_data
    - functionName:    krb5int_fast_tgs_armor
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/fast.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - fast_armor_ap_request
        - krb5_c_fx_cf2_simple
        - krb5_free_keyblock
        - krb5_free_principal
        - krb5int_tgtname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fast.c:121,18'
          Dst:             krb5int_tgtname
        - Src:             'fast.c:124,22'
          Dst:             fast_armor_ap_request
        - Src:             'fast.c:129,22'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'fast.c:134,18'
          Dst:             krb5_c_fx_cf2_simple
        - Src:             'fast.c:139,9'
          Dst:             krb5_free_principal
        - Src:             'fast.c:140,5'
          Dst:             krb5_free_keyblock
    - functionName:    krb5_generate_seq_number
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gen_seqnum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_c_random_make_octets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gen_seqnum.c:47,14'
          Dst:             krb5_c_random_make_octets
    - functionName:    krb5_generate_subkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gen_subkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_generate_subkey_extended
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gen_subkey.c:57,12'
          Dst:             krb5_generate_subkey_extended
    - functionName:    krb5_generate_subkey_extended
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gen_subkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_c_make_random_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gen_subkey.c:44,14'
          Dst:             krb5_c_make_random_key
    - functionName:    k5_generate_and_save_subkey
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/gen_save_subkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_auth_con_setrecvsubkey
        - krb5_auth_con_setsendsubkey
        - krb5_free_keyblock
        - krb5_generate_subkey_extended
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gen_save_subkey.c:39,14'
          Dst:             krb5_generate_subkey_extended
        - Src:             'gen_save_subkey.c:42,14'
          Dst:             krb5_auth_con_setsendsubkey
        - Src:             'gen_save_subkey.c:45,14'
          Dst:             krb5_auth_con_setrecvsubkey
        - Src:             'gen_save_subkey.c:51,16'
          Dst:             krb5_auth_con_setsendsubkey
        - Src:             'gen_save_subkey.c:52,16'
          Dst:             krb5_auth_con_setrecvsubkey
        - Src:             'gen_save_subkey.c:54,5'
          Dst:             krb5_free_keyblock
    - functionName:    zapfreedata
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:687,9'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_krbpriv
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_priv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          186
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - alloc_data
        - encode_krb5_enc_priv_part
        - encode_krb5_priv
        - krb5_c_encrypt_length
        - krb5_k_encrypt
        - krb5_k_key_enctype
        - zapfree
        - zapfreedata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_priv.c:49,28'
          Dst:             krb5_k_key_enctype
        - Src:             'mk_priv.c:67,11'
          Dst:             encode_krb5_enc_priv_part
        - Src:             'mk_priv.c:72,11'
          Dst:             krb5_c_encrypt_length
        - Src:             'mk_priv.c:77,11'
          Dst:             alloc_data
        - Src:             'mk_priv.c:81,11'
          Dst:             krb5_k_encrypt
        - Src:             'mk_priv.c:87,11'
          Dst:             encode_krb5_priv
        - Src:             'mk_priv.c:98,5'
          Dst:             zapfree
        - Src:             'mk_priv.c:100,5'
          Dst:             zapfreedata
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_mk_priv
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/mk_priv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          200
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - create_krbpriv
        - empty_data
        - k5_privsafe_check_replay
        - k5_privsafe_gen_addrs
        - k5_privsafe_gen_rdata
        - krb5_free_data_contents
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mk_priv.c:113,29'
          Dst:             empty_data
        - Src:             'mk_priv.c:117,16'
          Dst:             empty_data
        - Src:             'mk_priv.c:124,11'
          Dst:             k5_privsafe_gen_rdata
        - Src:             'mk_priv.c:128,11'
          Dst:             k5_privsafe_gen_addrs
        - Src:             'mk_priv.c:134,11'
          Dst:             create_krbpriv
        - Src:             'mk_priv.c:139,11'
          Dst:             k5_privsafe_check_replay
        - Src:             'mk_priv.c:144,19'
          Dst:             empty_data
        - Src:             'mk_priv.c:150,5'
          Dst:             krb5_free_data_contents
        - Src:             'mk_priv.c:151,5'
          Dst:             zapfree
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5_parse_host_string
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse_host_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          260
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - k5_is_string_numeric
        - k5memdup0
        - strchr
        - strcspn
        - strtoul
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parse_host_string.c:89,9'
          Dst:             k5_is_string_numeric
        - Src:             'parse_host_string.c:91,40'
          Dst:             strchr
        - Src:             'parse_host_string.c:98,19'
          Dst:             strcspn
        - Src:             'parse_host_string.c:105,9'
          Dst:             __errno_location
        - Src:             'parse_host_string.c:106,13'
          Dst:             strtoul
        - Src:             'parse_host_string.c:107,13'
          Dst:             __errno_location
        - Src:             'parse_host_string.c:116,20'
          Dst:             k5memdup0
    - functionName:    k5_is_string_numeric
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/parse_host_string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parse_host_string.c:44,14'
          Dst:             __ctype_b_loc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_krbpriv
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_priv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          216
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_data
        - decode_krb5_enc_priv_part
        - decode_krb5_priv
        - empty_data
        - k5_privsafe_check_addrs
        - krb5_free_priv
        - krb5_free_priv_enc_part
        - krb5_k_decrypt
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_priv.c:51,27'
          Dst:             empty_data
        - Src:             'rd_priv.c:59,11'
          Dst:             decode_krb5_priv
        - Src:             'rd_priv.c:63,11'
          Dst:             alloc_data
        - Src:             'rd_priv.c:68,11'
          Dst:             krb5_k_decrypt
        - Src:             'rd_priv.c:73,11'
          Dst:             decode_krb5_enc_priv_part
        - Src:             'rd_priv.c:77,11'
          Dst:             k5_privsafe_check_addrs
        - Src:             'rd_priv.c:93,5'
          Dst:             krb5_free_priv_enc_part
        - Src:             'rd_priv.c:94,5'
          Dst:             krb5_free_priv
        - Src:             'rd_priv.c:95,5'
          Dst:             zapfree
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_rd_priv
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_priv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          222
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - empty_data
        - k5_privsafe_check_replay
        - k5_privsafe_check_seqnum
        - krb5_free_data_contents
        - read_krbpriv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rd_priv.c:108,26'
          Dst:             empty_data
        - Src:             'rd_priv.c:111,21'
          Dst:             empty_data
        - Src:             'rd_priv.c:120,11'
          Dst:             read_krbpriv
        - Src:             'rd_priv.c:124,11'
          Dst:             k5_privsafe_check_replay
        - Src:             'rd_priv.c:129,14'
          Dst:             k5_privsafe_check_seqnum
        - Src:             'rd_priv.c:144,16'
          Dst:             empty_data
        - Src:             'rd_priv.c:147,5'
          Dst:             krb5_free_data_contents
        - Src:             'rd_priv.c:148,5'
          Dst:             krb5_free_data_contents
    - functionName:    krb5_rd_req
      functionSourceFile: '/src/krb5/src/lib/krb5/krb/rd_req.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          216
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - decode_krb5_ap_req
        - krb5_auth_con_free
        - krb5_auth_con_init
        - krb5_free_ap_req
        - krb5_kt_close
        - krb5_kt_default
        - krb5_rd_req_decoded
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rd_req.c:60,9'
          Branch Sides:    []
      Callsites:
        - Src:             'rd_req.c:59,19'
          Dst:             decode_krb5_ap_req
        - Src:             'rd_req.c:72,23'
          Dst:             krb5_auth_con_init
        - Src:             'rd_req.c:81,23'
          Dst:             krb5_kt_default
        - Src:             'rd_req.c:87,14'
          Dst:             krb5_rd_req_decoded
        - Src:             'rd_req.c:97,16'
          Dst:             krb5_kt_close
        - Src:             'rd_req.c:102,9'
          Dst:             krb5_auth_con_free
        - Src:             'rd_req.c:107,5'
          Dst:             krb5_free_ap_req
    - functionName:    ucdata_reload
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1298
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucdata_unload
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucdata_load
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucgetdigit
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1286
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ucdigit_lookup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:1284,12'
          Dst:             ucdigit_lookup
    - functionName:    ucdigit_lookup
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucgetnumber
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1257
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ucnumber_lookup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:1267,12'
          Dst:             ucnumber_lookup
    - functionName:    ucnumber_lookup
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          93
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uccompatdecomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uccanoncompatdecomp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:1011,12'
          Dst:             uccanoncompatdecomp
    - functionName:    uccanoncompatdecomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 934
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          489
      EdgeCount:       85
      CyclomaticComplexity: 22
      functionsReached:
        - realloc
        - uccombining_class
        - ucdecomp
        - ucdecomp_hangul
        - uckdecomp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:946,13'
          Dst:             uckdecomp
        - Src:             'ucdata.c:946,47'
          Dst:             ucdecomp
        - Src:             'ucdata.c:949,38'
          Dst:             realloc
        - Src:             'ucdata.c:954,25'
          Dst:             uccombining_class
        - Src:             'ucdata.c:959,38'
          Dst:             uccombining_class
        - Src:             'ucdata.c:966,20'
          Dst:             ucdecomp_hangul
        - Src:             'ucdata.c:969,38'
          Dst:             realloc
        - Src:             'ucdata.c:980,38'
          Dst:             realloc
        - Src:             'ucdata.c:984,21'
          Dst:             uccombining_class
        - Src:             'ucdata.c:989,34'
          Dst:             uccombining_class
    - functionName:    uckdecomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 913
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucdecomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uccombining_class
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ucdecomp_hangul
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 917
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uccanondecomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uccanoncompatdecomp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:1004,12'
          Dst:             uccanoncompatdecomp
    - functionName:    uccanoncomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          132
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - uccombining_class
        - uccomp
        - uccomp_hangul
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:676,14'
          Dst:             uccombining_class
        - Src:             'ucdata.c:680,14'
          Dst:             uccombining_class
        - Src:             'ucdata.c:681,13'
          Dst:             uccomp
        - Src:             'ucdata.c:693,12'
          Dst:             uccomp_hangul
    - functionName:    uccomp
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uccomp_hangul
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uctotitle
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _uccase_lookup
        - ucisprop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:479,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:487,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:500,12'
          Dst:             _uccase_lookup
    - functionName:    ucisprop
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          157
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - _ucprop_lookup
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:292,37'
          Dst:             _ucprop_lookup
        - Src:             'ucdata.c:297,42'
          Dst:             _ucprop_lookup
    - functionName:    _uccase_lookup
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ucprop_lookup
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uctolower
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _uccase_lookup
        - ucisprop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:452,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:455,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:470,12'
          Dst:             _uccase_lookup
    - functionName:    uctoupper
      functionSourceFile: '/src/krb5/src/lib/krb5/unicode/ucdata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _uccase_lookup
        - ucisprop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ucdata.c:425,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:428,9'
          Dst:             ucisprop
        - Src:             'ucdata.c:443,12'
          Dst:             _uccase_lookup
    - functionName:    k5_print_addr_port
      functionSourceFile: '/src/krb5/src/lib/krb5/os/addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - getnameinfo
        - k5_print_addr
        - krb5int_strlcpy
        - sa_is_inet
        - sa_socklen
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'addr.c:97,9'
          Dst:             sa_is_inet
        - Src:             'addr.c:98,29'
          Dst:             sa_socklen
        - Src:             'addr.c:98,13'
          Dst:             getnameinfo
        - Src:             'addr.c:100,13'
          Dst:             krb5int_strlcpy
        - Src:             'addr.c:102,19'
          Dst:             snprintf
        - Src:             'addr.c:104,19'
          Dst:             snprintf
        - Src:             'addr.c:107,9'
          Dst:             k5_print_addr
    - functionName:    sa_is_inet
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa_socklen
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/socket-utils.h:161,9'
          Dst:             abort
    - functionName:    getnameinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_print_addr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - getnameinfo
        - krb5int_strlcpy
        - sa2sun
        - sa_is_inet
        - sa_socklen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'addr.c:79,9'
          Dst:             sa_is_inet
        - Src:             'addr.c:80,29'
          Dst:             sa_socklen
        - Src:             'addr.c:80,13'
          Dst:             getnameinfo
        - Src:             'addr.c:82,13'
          Dst:             krb5int_strlcpy
        - Src:             'addr.c:85,22'
          Dst:             sa2sun
        - Src:             'addr.c:85,9'
          Dst:             krb5int_strlcpy
        - Src:             'addr.c:88,9'
          Dst:             krb5int_strlcpy
    - functionName:    sa2sun
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa2sin6
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa2sin
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/socket-utils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sockaddr_to_address
      functionSourceFile: '/src/krb5/src/lib/krb5/os/addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          184
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - htonl
        - sa2sin
        - sa2sin6
        - sa2sun
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'addr.c:48,41'
          Dst:             sa2sin
        - Src:             'addr.c:53,43'
          Dst:             sa2sin6
        - Src:             'addr.c:54,13'
          Dst:             htonl
        - Src:             'addr.c:66,30'
          Dst:             sa2sun
        - Src:             'addr.c:66,23'
          Dst:             strlen
        - Src:             'addr.c:67,36'
          Dst:             sa2sun
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    ts_incr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    krb5_crypto_us_timeofday
      functionSourceFile: '/src/krb5/src/lib/krb5/os/c_ustime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - get_time_now
        - k5_mutex_lock
        - k5_mutex_unlock
        - ts_incr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'c_ustime.c:100,11'
          Dst:             get_time_now
        - Src:             'c_ustime.c:109,5'
          Dst:             k5_mutex_lock
        - Src:             'c_ustime.c:123,20'
          Dst:             ts_incr
        - Src:             'c_ustime.c:133,23'
          Dst:             ts_incr
        - Src:             'c_ustime.c:139,5'
          Dst:             k5_mutex_unlock
    - functionName:    get_time_now
      functionSourceFile: '/src/krb5/src/lib/krb5/os/c_ustime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - gettimeofday
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'c_ustime.c:66,9'
          Dst:             gettimeofday
        - Src:             'c_ustime.c:67,16'
          Dst:             __errno_location
    - functionName:    k5_us_timeofday
      functionSourceFile: '/src/krb5/src/lib/krb5/os/c_ustime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_time_now
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'c_ustime.c:82,11'
          Dst:             get_time_now
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_primary_domain
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __res_nclose
        - __res_ninit
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:444,10'
          Dst:             __res_ninit
        - Src:             'dnsglue.c:446,14'
          Dst:             strdup
        - Src:             'dnsglue.c:447,5'
          Dst:             __res_nclose
    - functionName:    __res_ninit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __res_nclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5_input_get_byte
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:83,32'
          Dst:             k5_input_get_bytes
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    txt_lookup_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_cstring
        - k5_buf_init_dynamic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:315,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'dnsglue.c:318,9'
          Dst:             k5_buf_add
        - Src:             'dnsglue.c:320,9'
          Dst:             k5_buf_add_fmt
        - Src:             'dnsglue.c:334,13'
          Dst:             k5_buf_add
        - Src:             'dnsglue.c:337,12'
          Dst:             k5_buf_cstring
    - functionName:    k5_try_realm_txt_rr
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          188
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - k5_dns_fini
        - k5_dns_init
        - k5_dns_nextans
        - k5_input_get_byte
        - k5_input_get_bytes
        - k5memdup0
        - krb5int_trace
        - txt_lookup_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:406,15'
          Dst:             txt_lookup_name
        - Src:             'dnsglue.c:409,11'
          Dst:             k5_dns_init
        - Src:             'dnsglue.c:411,9'
          Dst:             krb5int_trace
        - Src:             'dnsglue.c:415,11'
          Dst:             k5_dns_nextans
        - Src:             'dnsglue.c:419,11'
          Dst:             k5_input_get_byte
        - Src:             'dnsglue.c:420,9'
          Dst:             k5_input_get_bytes
        - Src:             'dnsglue.c:423,14'
          Dst:             k5memdup0
        - Src:             'dnsglue.c:430,5'
          Dst:             krb5int_trace
        - Src:             'dnsglue.c:433,5'
          Dst:             k5_dns_fini
    - functionName:    k5_dns_init
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          195
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - __res_nclose
        - __res_ninit
        - __res_nsearch
        - k5_dns_fini
        - ns_initparse
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:127,10'
          Dst:             __res_ninit
        - Src:             'dnsglue.c:138,13'
          Dst:             realloc
        - Src:             'dnsglue.c:143,15'
          Dst:             __res_nsearch
        - Src:             'dnsglue.c:152,11'
          Dst:             ns_initparse
        - Src:             'dnsglue.c:164,5'
          Dst:             __res_nclose
        - Src:             'dnsglue.c:165,5'
          Dst:             k5_dns_fini
    - functionName:    k5_dns_nextans
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          105
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - k5_input_init
        - ns_parserr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:176,5'
          Dst:             k5_input_init
        - Src:             'dnsglue.c:178,15'
          Dst:             ns_parserr
        - Src:             'dnsglue.c:184,13'
          Dst:             k5_input_init
    - functionName:    k5_dns_fini
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ns_parserr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __res_nsearch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ns_initparse
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_dns_expand
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnsglue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - ns_name_uncompress
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnsglue.c:202,12'
          Dst:             ns_name_uncompress
        - Src:             'dnsglue.c:208,11'
          Dst:             k5_input_get_bytes
    - functionName:    ns_name_uncompress
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    __bswap_16
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:589,12'
          Dst:             __bswap_16
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    krb5int_make_srv_query_realm
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnssrv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          233
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - asprintf
        - k5_dns_expand
        - k5_dns_fini
        - k5_dns_init
        - k5_dns_nextans
        - k5_input_get_uint16_be
        - krb5int_make_srv_query_realm
        - krb5int_trace
        - make_lookup_name
        - place_srv_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dnssrv.c:281,12'
          Dst:             make_lookup_name
        - Src:             'dnssrv.c:285,5'
          Dst:             krb5int_trace
        - Src:             'dnssrv.c:287,12'
          Dst:             k5_dns_init
        - Src:             'dnssrv.c:291,16'
          Dst:             krb5int_make_srv_query_realm
        - Src:             'dnssrv.c:298,15'
          Dst:             k5_dns_nextans
        - Src:             'dnssrv.c:302,20'
          Dst:             k5_input_get_uint16_be
        - Src:             'dnssrv.c:303,18'
          Dst:             k5_input_get_uint16_be
        - Src:             'dnssrv.c:304,16'
          Dst:             k5_input_get_uint16_be
        - Src:             'dnssrv.c:310,15'
          Dst:             k5_dns_expand
        - Src:             'dnssrv.c:329,13'
          Dst:             asprintf
        - Src:             'dnssrv.c:334,9'
          Dst:             krb5int_trace
        - Src:             'dnssrv.c:336,9'
          Dst:             place_srv_entry
        - Src:             'dnssrv.c:340,5'
          Dst:             k5_dns_fini
    - functionName:    make_lookup_name
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnssrv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - k5_buf_cstring
        - k5_buf_init_dynamic
        - memchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dnssrv.c:56,9'
          Dst:             memchr
        - Src:             'dnssrv.c:59,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'dnssrv.c:60,5'
          Dst:             k5_buf_add_fmt
        - Src:             'dnssrv.c:62,9'
          Dst:             k5_buf_add_fmt
        - Src:             'dnssrv.c:64,9'
          Dst:             k5_buf_add_fmt
        - Src:             'dnssrv.c:65,5'
          Dst:             k5_buf_add_len
        - Src:             'dnssrv.c:75,9'
          Dst:             k5_buf_add
        - Src:             'dnssrv.c:77,12'
          Dst:             k5_buf_cstring
    - functionName:    k5_input_get_uint16_be
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_be
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-input.h:90,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../../include/k5-input.h:91,32'
          Dst:             load_16_be
    - functionName:    place_srv_entry
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnssrv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/krb5/os/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5_make_uri_query
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnssrv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          222
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - k5_dns_fini
        - k5_dns_init
        - k5_dns_nextans
        - k5_input_get_uint16_be
        - k5_make_uri_query
        - k5alloc
        - k5memdup0
        - krb5int_trace
        - make_lookup_name
        - place_srv_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dnssrv.c:202,12'
          Dst:             make_lookup_name
        - Src:             'dnssrv.c:206,5'
          Dst:             krb5int_trace
        - Src:             'dnssrv.c:208,12'
          Dst:             k5_dns_init
        - Src:             'dnssrv.c:212,16'
          Dst:             k5_make_uri_query
        - Src:             'dnssrv.c:218,15'
          Dst:             k5_dns_nextans
        - Src:             'dnssrv.c:222,20'
          Dst:             k5_input_get_uint16_be
        - Src:             'dnssrv.c:223,18'
          Dst:             k5_input_get_uint16_be
        - Src:             'dnssrv.c:227,15'
          Dst:             k5alloc
        - Src:             'dnssrv.c:233,21'
          Dst:             k5memdup0
        - Src:             'dnssrv.c:239,9'
          Dst:             krb5int_trace
        - Src:             'dnssrv.c:240,9'
          Dst:             place_srv_entry
        - Src:             'dnssrv.c:244,5'
          Dst:             k5_dns_fini
    - functionName:    krb5int_free_srv_dns_data
      functionSourceFile: '/src/krb5/src/lib/krb5/os/dnssrv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_rename_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          214
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - strcmp
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:709,9'
          Dst:             strcmp
        - Src:             'prof_tree.c:715,18'
          Dst:             strdup
        - Src:             'prof_tree.c:725,13'
          Dst:             strcmp
    - functionName:    profile_set_relation_value
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:687,10'
          Dst:             strdup
    - functionName:    profile_remove_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    profile_node_iterator
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         140
      ICount:          838
      EdgeCount:       188
      CyclomaticComplexity: 50
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
        - profile_node_iterator_free
        - profile_update_file_data_locked
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:538,9'
          Dst:             k5_mutex_lock
        - Src:             'prof_tree.c:546,13'
          Dst:             k5_mutex_unlock
        - Src:             'prof_tree.c:554,17'
          Dst:             k5_mutex_unlock
        - Src:             'prof_tree.c:555,13'
          Dst:             profile_node_iterator_free
        - Src:             'prof_tree.c:564,23'
          Dst:             profile_update_file_data_locked
        - Src:             'prof_tree.c:565,13'
          Dst:             k5_mutex_unlock
        - Src:             'prof_tree.c:570,21'
          Dst:             k5_mutex_lock
        - Src:             'prof_tree.c:575,17'
          Dst:             profile_node_iterator_free
        - Src:             'prof_tree.c:585,9'
          Dst:             __assert_fail
        - Src:             'prof_tree.c:588,22'
          Dst:             strcmp
        - Src:             'prof_tree.c:600,13'
          Dst:             k5_mutex_unlock
        - Src:             'prof_tree.c:603,17'
          Dst:             k5_mutex_lock
        - Src:             'prof_tree.c:615,27'
          Dst:             strcmp
        - Src:             'prof_tree.c:635,9'
          Dst:             k5_mutex_unlock
        - Src:             'prof_tree.c:638,13'
          Dst:             k5_mutex_lock
        - Src:             'prof_tree.c:643,5'
          Dst:             k5_mutex_unlock
    - functionName:    profile_node_iterator_free
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          50
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_node_iterator_create
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_get_node_parent
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_find_node_subsection
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          80
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - profile_find_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:424,14'
          Dst:             profile_find_node
    - functionName:    profile_find_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          307
      EdgeCount:       87
      CyclomaticComplexity: 25
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:319,22'
          Dst:             strcmp
        - Src:             'prof_tree.c:327,27'
          Dst:             strcmp
        - Src:             'prof_tree.c:347,22'
          Dst:             strcmp
        - Src:             'prof_tree.c:355,27'
          Dst:             strcmp
    - functionName:    profile_find_node_relation
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - profile_find_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:389,14'
          Dst:             profile_find_node
    - functionName:    profile_get_node_value
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_get_node_name
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_is_node_final
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_make_node_final
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_add_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          274
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - profile_create_node
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:216,15'
          Dst:             strcmp
        - Src:             'prof_tree.c:233,14'
          Dst:             profile_create_node
    - functionName:    profile_create_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - profile_free_node
        - strdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:98,17'
          Dst:             strdup
        - Src:             'prof_tree.c:100,9'
          Dst:             profile_free_node
        - Src:             'prof_tree.c:104,22'
          Dst:             strdup
        - Src:             'prof_tree.c:106,13'
          Dst:             profile_free_node
    - functionName:    profile_free_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - profile_free_node
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:64,9'
          Dst:             profile_free_node
    - functionName:    profile_verify_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          149
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - profile_verify_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:185,18'
          Dst:             profile_verify_node
    - functionName:    profile_copy_node
      functionSourceFile: '/src/krb5/src/util/profile/prof_tree.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          175
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - calloc
        - profile_copy_node
        - profile_free_node
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_tree.c:124,12'
          Dst:             calloc
        - Src:             'prof_tree.c:126,18'
          Dst:             strdup
        - Src:             'prof_tree.c:130,23'
          Dst:             strdup
        - Src:             'prof_tree.c:141,13'
          Dst:             profile_copy_node
        - Src:             'prof_tree.c:156,5'
          Dst:             profile_free_node
    - functionName:    make_hard_link
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - link
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:402,12'
          Dst:             link
    - functionName:    link
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_library_initializer
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:59,5'
          Dst:             add_error_table
        - Src:             'prof_file.c:61,12'
          Dst:             k5_mutex_finish_init
    - functionName:    profile_library_initializer__aux
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - profile_library_initializer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:51,1'
          Dst:             profile_library_initializer
    - functionName:    profile_free_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - profile_dereference_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:599,5'
          Dst:             profile_dereference_data
    - functionName:    profile_dereference_data
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - profile_dereference_data_locked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:539,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:540,5'
          Dst:             profile_dereference_data_locked
        - Src:             'prof_file.c:541,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    profile_dereference_data_locked
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - profile_free_file_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:547,9'
          Dst:             profile_free_file_data
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    profile_free_file_data
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - k5_os_mutex_destroy
        - profile_free_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:625,9'
          Dst:             profile_free_node
        - Src:             'prof_file.c:627,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    profile_copy_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          151
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - k5_mutex_lock
        - k5_mutex_unlock
        - profile_copy_node
        - profile_free_file
        - profile_lock_global
        - profile_make_prf_data
        - profile_unlock_global
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:563,12'
          Dst:             calloc
        - Src:             'prof_file.c:570,9'
          Dst:             profile_lock_global
        - Src:             'prof_file.c:572,9'
          Dst:             profile_unlock_global
        - Src:             'prof_file.c:578,18'
          Dst:             profile_make_prf_data
        - Src:             'prof_file.c:583,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:587,24'
          Dst:             profile_copy_node
        - Src:             'prof_file.c:588,5'
          Dst:             k5_mutex_unlock
        - Src:             'prof_file.c:590,9'
          Dst:             profile_free_file
    - functionName:    profile_lock_global
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:552,5'
          Dst:             k5_mutex_lock
    - functionName:    profile_unlock_global
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:556,5'
          Dst:             k5_mutex_unlock
    - functionName:    profile_make_prf_data
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          112
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - k5_mutex_init
        - krb5int_strlcpy
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:145,12'
          Dst:             strlen
        - Src:             'prof_file.c:155,5'
          Dst:             __assert_fail
        - Src:             'prof_file.c:156,5'
          Dst:             krb5int_strlcpy
        - Src:             'prof_file.c:162,9'
          Dst:             k5_mutex_init
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/util/profile/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    profile_flush_file_data_to_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - write_data_to_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:529,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:530,14'
          Dst:             write_data_to_file
        - Src:             'prof_file.c:531,5'
          Dst:             k5_mutex_unlock
    - functionName:    write_data_to_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          219
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - asprintf
        - fclose
        - fcntl
        - fileno
        - fopen
        - make_hard_link
        - profile_write_tree_file
        - rename
        - sync
        - unlink
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:417,9'
          Dst:             asprintf
        - Src:             'prof_file.c:421,9'
          Dst:             asprintf
        - Src:             'prof_file.c:426,5'
          Dst:             __errno_location
        - Src:             'prof_file.c:428,9'
          Dst:             fopen
        - Src:             'prof_file.c:430,18'
          Dst:             __errno_location
        - Src:             'prof_file.c:436,5'
          Dst:             fileno
        - Src:             'prof_file.c:436,5'
          Dst:             fcntl
        - Src:             'prof_file.c:437,5'
          Dst:             profile_write_tree_file
        - Src:             'prof_file.c:438,9'
          Dst:             fclose
        - Src:             'prof_file.c:439,18'
          Dst:             __errno_location
        - Src:             'prof_file.c:443,5'
          Dst:             unlink
        - Src:             'prof_file.c:444,9'
          Dst:             make_hard_link
        - Src:             'prof_file.c:448,13'
          Dst:             rename
        - Src:             'prof_file.c:452,22'
          Dst:             __errno_location
        - Src:             'prof_file.c:455,16'
          Dst:             __errno_location
        - Src:             'prof_file.c:456,13'
          Dst:             rename
        - Src:             'prof_file.c:457,22'
          Dst:             __errno_location
        - Src:             'prof_file.c:465,9'
          Dst:             sync
        - Src:             'prof_file.c:467,13'
          Dst:             rename
        - Src:             'prof_file.c:468,22'
          Dst:             __errno_location
        - Src:             'prof_file.c:471,13'
          Dst:             rename
        - Src:             'prof_file.c:472,22'
          Dst:             __errno_location
        - Src:             'prof_file.c:473,13'
          Dst:             rename
    - functionName:    sync
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    profile_flush_file_data
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - write_data_to_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:509,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:512,9'
          Dst:             k5_mutex_unlock
        - Src:             'prof_file.c:516,14'
          Dst:             write_data_to_file
        - Src:             'prof_file.c:518,5'
          Dst:             k5_mutex_unlock
    - functionName:    profile_flush_file_data_to_buffer
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - profile_write_tree_to_buffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:492,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:493,14'
          Dst:             profile_write_tree_to_buffer
        - Src:             'prof_file.c:494,5'
          Dst:             k5_mutex_unlock
    - functionName:    profile_open_memory
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - profile_create_node
        - profile_free_node
        - profile_make_prf_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:270,12'
          Dst:             calloc
        - Src:             'prof_file.c:275,9'
          Dst:             profile_create_node
        - Src:             'prof_file.c:278,12'
          Dst:             profile_make_prf_data
        - Src:             'prof_file.c:291,9'
          Dst:             profile_free_node
    - functionName:    profile_close_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - profile_flush_file_data
        - profile_free_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:635,14'
          Dst:             profile_flush_file_data
        - Src:             'prof_file.c:638,5'
          Dst:             profile_free_file
    - functionName:    profile_update_file_data
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - profile_update_file_data_locked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:390,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:391,14'
          Dst:             profile_update_file_data_locked
        - Src:             'prof_file.c:392,5'
          Dst:             k5_mutex_unlock
    - functionName:    profile_update_file_data_locked
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          307
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - __assert_fail
        - __errno_location
        - fclose
        - fcntl
        - fileno
        - fopen
        - profile_free_node
        - profile_parse_file
        - profile_process_directory
        - stat
        - time
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:315,11'
          Dst:             time
        - Src:             'prof_file.c:319,9'
          Dst:             stat
        - Src:             'prof_file.c:320,16'
          Dst:             __errno_location
        - Src:             'prof_file.c:338,9'
          Dst:             profile_free_node
        - Src:             'prof_file.c:360,9'
          Dst:             __errno_location
        - Src:             'prof_file.c:361,13'
          Dst:             fopen
        - Src:             'prof_file.c:363,21'
          Dst:             __errno_location
        - Src:             'prof_file.c:363,35'
          Dst:             __errno_location
        - Src:             'prof_file.c:364,9'
          Dst:             fileno
        - Src:             'prof_file.c:364,9'
          Dst:             fcntl
        - Src:             'prof_file.c:370,18'
          Dst:             profile_process_directory
        - Src:             'prof_file.c:372,18'
          Dst:             profile_parse_file
        - Src:             'prof_file.c:373,15'
          Dst:             fclose
        - Src:             'prof_file.c:378,5'
          Dst:             __assert_fail
    - functionName:    r_access
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - access
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:108,9'
          Dst:             access
    - functionName:    profile_open_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          391
      EdgeCount:       87
      CyclomaticComplexity: 25
      functionsReached:
        - __assert_fail
        - asprintf
        - getpwuid_r
        - getuid
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_once
        - profile_close_file
        - profile_dereference_data
        - profile_make_prf_data
        - profile_update_file_data
        - profile_update_file_data_locked
        - r_access
        - secure_getenv
        - strcmp
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:178,14'
          Dst:             k5_once
        - Src:             'prof_file.c:178,14'
          Dst:             __assert_fail
        - Src:             'prof_file.c:189,20'
          Dst:             secure_getenv
        - Src:             'prof_file.c:196,19'
          Dst:             getuid
        - Src:             'prof_file.c:197,18'
          Dst:             getpwuid_r
        - Src:             'prof_file.c:204,13'
          Dst:             asprintf
        - Src:             'prof_file.c:208,29'
          Dst:             strdup
        - Src:             'prof_file.c:214,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:216,14'
          Dst:             strcmp
        - Src:             'prof_file.c:218,16'
          Dst:             r_access
        - Src:             'prof_file.c:223,9'
          Dst:             k5_mutex_unlock
        - Src:             'prof_file.c:224,9'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:226,18'
          Dst:             profile_update_file_data_locked
        - Src:             'prof_file.c:227,9'
          Dst:             k5_mutex_unlock
        - Src:             'prof_file.c:230,13'
          Dst:             profile_dereference_data
        - Src:             'prof_file.c:238,5'
          Dst:             k5_mutex_unlock
        - Src:             'prof_file.c:239,12'
          Dst:             profile_make_prf_data
        - Src:             'prof_file.c:248,14'
          Dst:             profile_update_file_data
        - Src:             'prof_file.c:250,9'
          Dst:             profile_close_file
        - Src:             'prof_file.c:254,5'
          Dst:             k5_mutex_lock
        - Src:             'prof_file.c:258,5'
          Dst:             k5_mutex_unlock
    - functionName:    rw_access
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - access
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:84,9'
          Dst:             access
    - functionName:    profile_file_is_writable
      functionSourceFile: '/src/krb5/src/util/profile/prof_file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rw_access
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_file.c:132,16'
          Dst:             rw_access
    - functionName:    output_quoted_string
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'prof_parse.c:492,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    need_double_quotes
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - __ctype_b_loc
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:468,9'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:468,33'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:468,33'
          Dst:             strlen
        - Src:             'prof_parse.c:470,9'
          Dst:             strchr
        - Src:             'prof_parse.c:470,30'
          Dst:             strchr
        - Src:             'prof_parse.c:470,51'
          Dst:             strchr
    - functionName:    parse_include_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fclose
        - fopen
        - parse_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:229,10'
          Dst:             fopen
        - Src:             'prof_parse.c:232,14'
          Dst:             parse_file
        - Src:             'prof_parse.c:233,5'
          Dst:             fclose
    - functionName:    parse_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - feof
        - fgets
        - parse_line
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:351,13'
          Dst:             feof
        - Src:             'prof_parse.c:352,13'
          Dst:             fgets
        - Src:             'prof_parse.c:355,18'
          Dst:             parse_line
    - functionName:    parse_line
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          140
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - __ctype_b_loc
        - parse_std_line
        - skip_over_blanks
        - strdup
        - strip_line
        - strncmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'prof_parse.c:307,5'
          Branch Sides:    []
      Callsites:
        - Src:             'prof_parse.c:309,13'
          Dst:             strncmp
        - Src:             'prof_parse.c:309,48'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:318,22'
          Dst:             skip_over_blanks
        - Src:             'prof_parse.c:319,17'
          Dst:             strip_line
        - Src:             'prof_parse.c:320,32'
          Dst:             strdup
        - Src:             'prof_parse.c:330,16'
          Dst:             parse_std_line
        - Src:             'prof_parse.c:332,14'
          Dst:             skip_over_blanks
    - functionName:    skip_over_blanks
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __ctype_b_loc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:35,19'
          Dst:             __ctype_b_loc
    - functionName:    strip_line
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:42,22'
          Dst:             strlen
    - functionName:    parse_std_line
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         104
      ICount:          647
      EdgeCount:       143
      CyclomaticComplexity: 41
      functionsReached:
        - __ctype_b_loc
        - parse_quoted_string
        - profile_add_node
        - profile_get_node_parent
        - profile_is_node_final
        - profile_make_node_final
        - skip_over_blanks
        - strchr
        - strip_line
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:85,10'
          Dst:             skip_over_blanks
        - Src:             'prof_parse.c:88,5'
          Dst:             strip_line
        - Src:             'prof_parse.c:96,13'
          Dst:             strchr
        - Src:             'prof_parse.c:100,18'
          Dst:             profile_add_node
        - Src:             'prof_parse.c:107,26'
          Dst:             profile_is_node_final
        - Src:             'prof_parse.c:115,13'
          Dst:             profile_make_node_final
        - Src:             'prof_parse.c:121,14'
          Dst:             skip_over_blanks
        - Src:             'prof_parse.c:130,13'
          Dst:             profile_make_node_final
        - Src:             'prof_parse.c:138,22'
          Dst:             profile_get_node_parent
        - Src:             'prof_parse.c:149,10'
          Dst:             strchr
        - Src:             'prof_parse.c:157,23'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:164,18'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:169,10'
          Dst:             skip_over_blanks
        - Src:             'prof_parse.c:173,9'
          Dst:             parse_quoted_string
        - Src:             'prof_parse.c:177,37'
          Dst:             skip_over_blanks
        - Src:             'prof_parse.c:180,22'
          Dst:             strlen
        - Src:             'prof_parse.c:181,32'
          Dst:             __ctype_b_loc
        - Src:             'prof_parse.c:185,13'
          Dst:             strchr
        - Src:             'prof_parse.c:190,22'
          Dst:             profile_add_node
        - Src:             'prof_parse.c:196,17'
          Dst:             profile_is_node_final
        - Src:             'prof_parse.c:199,17'
          Dst:             profile_make_node_final
        - Src:             'prof_parse.c:203,9'
          Dst:             strchr
        - Src:             'prof_parse.c:207,9'
          Dst:             profile_add_node
        - Src:             'prof_parse.c:209,13'
          Dst:             profile_make_node_final
    - functionName:    parse_quoted_string
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          107
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'prof_parse.c:54,13'
          Branch Sides:    []
      Callsites:       []
    - functionName:    valid_name
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - __ctype_b_loc
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:242,18'
          Dst:             strlen
        - Src:             'prof_parse.c:248,22'
          Dst:             strcmp
        - Src:             'prof_parse.c:252,14'
          Dst:             __ctype_b_loc
    - functionName:    add_data_to_buffer
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          101
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:611,18'
          Dst:             realloc
    - functionName:    dump_profile_to_buffer_cb
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_data_to_buffer
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:625,54'
          Dst:             strlen
        - Src:             'prof_parse.c:625,5'
          Dst:             add_data_to_buffer
    - functionName:    profile_write_tree_to_buffer
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_data_to_buffer
        - dump_profile
        - dump_profile_to_buffer_cb
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:633,5'
          Dst:             dump_profile
        - Src:             'prof_parse.c:633,5'
          Dst:             dump_profile_to_buffer_cb
        - Src:             'prof_parse.c:638,5'
          Dst:             add_data_to_buffer
        - Src:             'prof_parse.c:640,24'
          Dst:             realloc
    - functionName:    dump_profile
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 583
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          283
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - dump_profile
        - need_double_quotes
        - output_quoted_string
        - profile_find_node_relation
        - profile_find_node_subsection
        - profile_is_node_final
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:539,18'
          Dst:             profile_find_node_relation
        - Src:             'prof_parse.c:548,13'
          Dst:             need_double_quotes
        - Src:             'prof_parse.c:549,13'
          Dst:             output_quoted_string
        - Src:             'prof_parse.c:557,18'
          Dst:             profile_find_node_subsection
        - Src:             'prof_parse.c:565,16'
          Dst:             profile_is_node_final
        - Src:             'prof_parse.c:567,13'
          Dst:             dump_profile
        - Src:             'prof_parse.c:575,13'
          Dst:             dump_profile
        - Src:             'prof_parse.c:579,16'
          Dst:             profile_is_node_final
    - functionName:    dump_profile_to_file_cb
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fputs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:587,5'
          Dst:             fputs
    - functionName:    profile_write_tree_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dump_profile
        - dump_profile_to_file_cb
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:592,5'
          Dst:             dump_profile
        - Src:             'prof_parse.c:592,5'
          Dst:             dump_profile_to_file_cb
    - functionName:    parse_include_dir
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          112
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - asprintf
        - k5_dir_filenames
        - k5_free_filenames
        - parse_include_file
        - valid_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:271,9'
          Dst:             k5_dir_filenames
        - Src:             'prof_parse.c:275,14'
          Dst:             valid_name
        - Src:             'prof_parse.c:277,13'
          Dst:             asprintf
        - Src:             'prof_parse.c:281,18'
          Dst:             parse_include_file
        - Src:             'prof_parse.c:286,5'
          Dst:             k5_free_filenames
    - functionName:    profile_process_directory
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - parse_include_dir
        - profile_create_node
        - profile_free_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:447,14'
          Dst:             profile_create_node
        - Src:             'prof_parse.c:450,14'
          Dst:             parse_include_dir
        - Src:             'prof_parse.c:452,9'
          Dst:             profile_free_node
    - functionName:    profile_parse_file
      functionSourceFile: '/src/krb5/src/util/profile/prof_parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - parse_file
        - profile_create_node
        - profile_free_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_parse.c:427,14'
          Dst:             profile_create_node
        - Src:             'prof_parse.c:431,14'
          Dst:             parse_file
        - Src:             'prof_parse.c:433,9'
          Dst:             profile_free_node
    - functionName:    initialize_prof_error_table
      functionSourceFile: '/src/krb5/src/util/profile/prof_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_error_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prof_err.c:73,12'
          Dst:             add_error_table
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_block_size
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/block_size.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'block_size.c:36,11'
          Dst:             find_enctype
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    krb5_c_fx_cf2_simple
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/cf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          230
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - alloc_data
        - empty_data
        - find_enctype
        - krb5_c_prfplus
        - krb5int_c_free_keyblock
        - krb5int_c_init_keyblock
        - string2data
        - zapfree
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'cf2.c:131,36'
          Dst:             string2data
        - Src:             'cf2.c:132,36'
          Dst:             string2data
        - Src:             'cf2.c:133,22'
          Dst:             empty_data
        - Src:             'cf2.c:133,43'
          Dst:             empty_data
        - Src:             'cf2.c:139,11'
          Dst:             find_enctype
        - Src:             'cf2.c:144,11'
          Dst:             alloc_data
        - Src:             'cf2.c:147,11'
          Dst:             krb5_c_prfplus
        - Src:             'cf2.c:150,11'
          Dst:             alloc_data
        - Src:             'cf2.c:153,11'
          Dst:             krb5_c_prfplus
        - Src:             'cf2.c:160,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'cf2.c:172,5'
          Dst:             zapfree
        - Src:             'cf2.c:173,5'
          Dst:             zapfree
        - Src:             'cf2.c:174,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    krb5_c_prfplus
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/cf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          206
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - alloc_data
        - empty_data
        - k5memcpy
        - krb5_c_prf
        - krb5_c_prf_length
        - zapfree
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cf2.c:43,24'
          Dst:             empty_data
        - Src:             'cf2.c:43,48'
          Dst:             empty_data
        - Src:             'cf2.c:47,11'
          Dst:             krb5_c_prf_length
        - Src:             'cf2.c:55,11'
          Dst:             alloc_data
        - Src:             'cf2.c:58,11'
          Dst:             alloc_data
        - Src:             'cf2.c:64,5'
          Dst:             k5memcpy
        - Src:             'cf2.c:67,15'
          Dst:             krb5_c_prf
        - Src:             'cf2.c:76,5'
          Dst:             zapfree
        - Src:             'cf2.c:77,5'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_derive_prfplus
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/cf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          148
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - alloc_data
        - empty_data
        - find_enctype
        - krb5_c_prfplus
        - krb5int_c_free_keyblock
        - krb5int_c_init_keyblock
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cf2.c:88,21'
          Dst:             empty_data
        - Src:             'cf2.c:93,11'
          Dst:             find_enctype
        - Src:             'cf2.c:98,11'
          Dst:             alloc_data
        - Src:             'cf2.c:101,11'
          Dst:             krb5_c_prfplus
        - Src:             'cf2.c:106,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'cf2.c:118,5'
          Dst:             zapfree
        - Src:             'cf2.c:119,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_checksum_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_cksumtype
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_length.c:36,11'
          Dst:             find_cksumtype
    - functionName:    krb5_c_crypto_length_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/crypto_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          174
      EdgeCount:       37
      CyclomaticComplexity: 7
      functionsReached:
        - find_enctype
        - krb5int_c_padding_length
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto_length.c:95,9'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto_length.c:88,11'
          Dst:             find_enctype
        - Src:             'crypto_length.c:117,18'
          Dst:             krb5int_c_padding_length
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_padding_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/crypto_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
        - krb5int_c_padding_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto_length.c:66,11'
          Dst:             find_enctype
        - Src:             'crypto_length.c:70,19'
          Dst:             krb5int_c_padding_length
    - functionName:    krb5_c_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/crypto_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 2
      functionsReached:
        - find_enctype
      functionUses:    12
      BranchProfiles:
        - Branch String:   'crypto_length.c:39,5'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto_length.c:35,11'
          Dst:             find_enctype
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5_c_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/decrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_decrypt
        - krb5_k_free_key
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'decrypt.c:95,11'
          Dst:             krb5_k_create_key
        - Src:             'decrypt.c:98,11'
          Dst:             krb5_k_decrypt
        - Src:             'decrypt.c:99,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/decrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          294
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - empty_data
        - explicit_bzero
        - find_enctype
        - k5alloc
        - make_data
        - zapfree
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'decrypt.c:41,11'
          Dst:             find_enctype
        - Src:             'decrypt.c:57,15'
          Dst:             k5alloc
        - Src:             'decrypt.c:62,19'
          Dst:             make_data
        - Src:             'decrypt.c:66,19'
          Dst:             make_data
        - Src:             'decrypt.c:71,19'
          Dst:             empty_data
        - Src:             'decrypt.c:74,19'
          Dst:             make_data
        - Src:             'decrypt.c:80,9'
          Dst:             explicit_bzero
        - Src:             'decrypt.c:83,5'
          Dst:             zapfree
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    krb5_c_decrypt_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/decrypt_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_decrypt_iov
        - krb5_k_free_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'decrypt_iov.c:57,11'
          Dst:             krb5_k_create_key
        - Src:             'decrypt_iov.c:60,11'
          Dst:             krb5_k_decrypt_iov
        - Src:             'decrypt_iov.c:62,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_decrypt_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/decrypt_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - find_enctype
        - krb5int_c_iov_decrypt_stream
        - krb5int_c_locate_iov
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'decrypt_iov.c:36,11'
          Dst:             find_enctype
        - Src:             'decrypt_iov.c:40,9'
          Dst:             krb5int_c_locate_iov
        - Src:             'decrypt_iov.c:42,16'
          Dst:             krb5int_c_iov_decrypt_stream
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/encrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_encrypt
        - krb5_k_free_key
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encrypt.c:88,11'
          Dst:             krb5_k_create_key
        - Src:             'encrypt.c:91,11'
          Dst:             krb5_k_encrypt
        - Src:             'encrypt.c:92,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/encrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          262
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - explicit_bzero
        - find_enctype
        - krb5int_c_padding_length
        - make_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encrypt.c:40,11'
          Dst:             find_enctype
        - Src:             'encrypt.c:50,19'
          Dst:             krb5int_c_padding_length
        - Src:             'encrypt.c:58,19'
          Dst:             make_data
        - Src:             'encrypt.c:61,19'
          Dst:             make_data
        - Src:             'encrypt.c:67,19'
          Dst:             make_data
        - Src:             'encrypt.c:70,19'
          Dst:             make_data
        - Src:             'encrypt.c:74,9'
          Dst:             explicit_bzero
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_encrypt_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/encrypt_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_encrypt_iov
        - krb5_k_free_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encrypt_iov.c:51,11'
          Dst:             krb5_k_create_key
        - Src:             'encrypt_iov.c:54,11'
          Dst:             krb5_k_encrypt_iov
        - Src:             'encrypt_iov.c:56,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_encrypt_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/encrypt_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encrypt_iov.c:36,11'
          Dst:             find_enctype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_encrypt_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/encrypt_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
        - krb5int_c_padding_length
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'encrypt_length.c:37,11'
          Dst:             find_enctype
        - Src:             'encrypt_length.c:42,19'
          Dst:             krb5int_c_padding_length
    - functionName:    k5_enctype_to_ssf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:171,11'
          Dst:             find_enctype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_enctype_to_name
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          172
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - find_enctype
        - krb5int_strlcpy
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:139,17'
          Dst:             krb5int_strlcpy
        - Src:             'enctype_util.c:145,11'
          Dst:             find_enctype
        - Src:             'enctype_util.c:153,17'
          Dst:             strlen
        - Src:             'enctype_util.c:153,43'
          Dst:             strlen
        - Src:             'enctype_util.c:157,9'
          Dst:             krb5int_strlcpy
    - functionName:    krb5_enctype_to_string
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - find_enctype
        - krb5int_strlcpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:121,11'
          Dst:             find_enctype
        - Src:             'enctype_util.c:124,9'
          Dst:             krb5int_strlcpy
    - functionName:    krb5_string_to_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:98,13'
          Dst:             strcasecmp
        - Src:             'enctype_util.c:106,17'
          Dst:             strcasecmp
    - functionName:    krb5_c_enctype_compare
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - find_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:79,12'
          Dst:             find_enctype
        - Src:             'enctype_util.c:80,12'
          Dst:             find_enctype
    - functionName:    krb5int_c_deprecated_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:69,39'
          Dst:             find_enctype
    - functionName:    krb5int_c_weak_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:62,11'
          Dst:             find_enctype
    - functionName:    krb5_c_valid_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enctype_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_enctype
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'enctype_util.c:54,13'
          Dst:             find_enctype
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_arcfour_gsscrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - enc_key
        - keyblock_crypt
        - krb5int_c_free_keyblock
        - krb5int_c_init_keyblock
        - usage_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:321,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:325,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:331,11'
          Dst:             usage_key
        - Src:             'enc_rc4.c:336,11'
          Dst:             enc_key
        - Src:             'enc_rc4.c:341,11'
          Dst:             keyblock_crypt
        - Src:             'enc_rc4.c:344,5'
          Dst:             krb5int_c_free_keyblock
        - Src:             'enc_rc4.c:345,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    usage_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_arcfour_translate_usage
        - krb5int_hmac_keyblock
        - make_data
        - store_32_le
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:46,26'
          Dst:             make_data
        - Src:             'enc_rc4.c:51,16'
          Dst:             krb5int_arcfour_translate_usage
        - Src:             'enc_rc4.c:54,9'
          Dst:             store_32_le
        - Src:             'enc_rc4.c:57,9'
          Dst:             store_32_le
        - Src:             'enc_rc4.c:63,16'
          Dst:             make_data
        - Src:             'enc_rc4.c:64,12'
          Dst:             krb5int_hmac_keyblock
    - functionName:    enc_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_c_copy_keyblock
        - krb5int_c_free_keyblock
        - krb5int_hmac_keyblock
        - make_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:75,26'
          Dst:             make_data
        - Src:             'enc_rc4.c:80,11'
          Dst:             krb5int_c_copy_keyblock
        - Src:             'enc_rc4.c:89,11'
          Dst:             krb5int_hmac_keyblock
        - Src:             'enc_rc4.c:90,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    keyblock_crypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:121,11'
          Dst:             krb5_k_create_key
        - Src:             'enc_rc4.c:126,5'
          Dst:             krb5_k_free_key
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_arcfour_translate_usage
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          83
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'enc_rc4.c:19,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_arcfour_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          322
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - alloc_data
        - empty_data
        - enc_key
        - k5_bcmp
        - keyblock_crypt
        - krb5int_c_free_keyblock
        - krb5int_c_init_keyblock
        - krb5int_c_locate_iov
        - krb5int_hmac_keyblock
        - make_data
        - usage_key
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:225,54'
          Dst:             empty_data
        - Src:             'enc_rc4.c:227,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_rc4.c:234,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_rc4.c:239,11'
          Dst:             alloc_data
        - Src:             'enc_rc4.c:242,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:246,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:251,16'
          Dst:             make_data
        - Src:             'enc_rc4.c:260,15'
          Dst:             usage_key
        - Src:             'enc_rc4.c:265,15'
          Dst:             enc_key
        - Src:             'enc_rc4.c:270,15'
          Dst:             keyblock_crypt
        - Src:             'enc_rc4.c:275,15'
          Dst:             krb5int_hmac_keyblock
        - Src:             'enc_rc4.c:280,13'
          Dst:             k5_bcmp
        - Src:             'enc_rc4.c:290,23'
          Dst:             keyblock_crypt
        - Src:             'enc_rc4.c:305,5'
          Dst:             krb5int_c_free_keyblock
        - Src:             'enc_rc4.c:306,5'
          Dst:             krb5int_c_free_keyblock
        - Src:             'enc_rc4.c:307,5'
          Dst:             zapfree
    - functionName:    krb5int_arcfour_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          306
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - enc_key
        - keyblock_crypt
        - krb5_c_random_make_octets
        - krb5int_c_free_keyblock
        - krb5int_c_init_keyblock
        - krb5int_c_locate_iov
        - krb5int_hmac_keyblock
        - make_data
        - usage_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_rc4.c:150,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_rc4.c:158,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_rc4.c:168,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:172,11'
          Dst:             krb5int_c_init_keyblock
        - Src:             'enc_rc4.c:178,11'
          Dst:             usage_key
        - Src:             'enc_rc4.c:184,18'
          Dst:             make_data
        - Src:             'enc_rc4.c:186,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'enc_rc4.c:189,16'
          Dst:             make_data
        - Src:             'enc_rc4.c:196,11'
          Dst:             krb5int_hmac_keyblock
        - Src:             'enc_rc4.c:202,11'
          Dst:             enc_key
        - Src:             'enc_rc4.c:206,11'
          Dst:             keyblock_crypt
        - Src:             'enc_rc4.c:210,5'
          Dst:             krb5int_c_free_keyblock
        - Src:             'enc_rc4.c:211,5'
          Dst:             krb5int_c_free_keyblock
    - functionName:    krb5int_arcfour_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_rc4.c:98,5'
          Branch Sides:    []
      Callsites:
        - Src:             'enc_rc4.c:107,9'
          Dst:             __assert_fail
    - functionName:    krb5_k_key_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_k_key_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_copy_keyblock
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'key.c:102,12'
          Dst:             krb5int_c_copy_keyblock
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_k_free_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - find_enctype
        - krb5_k_free_key
        - krb5int_c_free_keyblock_contents
      functionUses:    57
      BranchProfiles:  []
      Callsites:
        - Src:             'key.c:85,9'
          Dst:             krb5_k_free_key
        - Src:             'key.c:88,5'
          Dst:             krb5int_c_free_keyblock_contents
        - Src:             'key.c:90,15'
          Dst:             find_enctype
    - functionName:    krb5_k_reference_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_k_create_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_c_copy_keyblock_contents
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'key.c:49,12'
          Dst:             krb5int_c_copy_keyblock_contents
    - functionName:    krb5int_c_copy_keyblock_contents
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyblocks.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_c_copy_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyblocks.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_c_copy_keyblock_contents
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'keyblocks.c:86,12'
          Dst:             krb5int_c_copy_keyblock_contents
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    krb5int_c_free_keyblock_contents
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyblocks.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - zapfree
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'keyblocks.c:69,9'
          Dst:             zapfree
    - functionName:    krb5int_c_free_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyblocks.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_c_free_keyblock_contents
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'keyblocks.c:61,5'
          Dst:             krb5int_c_free_keyblock_contents
    - functionName:    krb5int_c_init_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyblocks.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'keyblocks.c:35,5'
          Dst:             __assert_fail
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_is_keyed_cksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/keyed_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_cksumtype
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'keyed_cksum.c:35,11'
          Dst:             find_cksumtype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_make_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/make_checksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_make_checksum
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'make_checksum.c:92,15'
          Dst:             krb5_k_create_key
        - Src:             'make_checksum.c:96,11'
          Dst:             krb5_k_make_checksum
        - Src:             'make_checksum.c:97,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_make_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/make_checksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          198
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_data
        - find_cksumtype
        - krb5int_c_mandatory_cksumtype
        - realloc
        - verify_key
        - zapfree
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'make_checksum.c:44,15'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'make_checksum.c:49,11'
          Dst:             find_cksumtype
        - Src:             'make_checksum.c:53,11'
          Dst:             verify_key
        - Src:             'make_checksum.c:57,11'
          Dst:             alloc_data
        - Src:             'make_checksum.c:73,17'
          Dst:             realloc
        - Src:             'make_checksum.c:79,5'
          Dst:             zapfree
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './crypto_int.h:602,17'
          Dst:             find_enctype
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_make_checksum_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/make_checksum_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_make_checksum_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'make_checksum_iov.c:88,15'
          Dst:             krb5_k_create_key
        - Src:             'make_checksum_iov.c:92,11'
          Dst:             krb5_k_make_checksum_iov
        - Src:             'make_checksum_iov.c:94,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_make_checksum_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/make_checksum_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          184
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_data
        - find_cksumtype
        - krb5int_c_locate_iov
        - krb5int_c_mandatory_cksumtype
        - verify_key
        - zapfree
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'make_checksum_iov.c:43,15'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'make_checksum_iov.c:48,11'
          Dst:             find_cksumtype
        - Src:             'make_checksum_iov.c:52,11'
          Dst:             verify_key
        - Src:             'make_checksum_iov.c:56,16'
          Dst:             krb5int_c_locate_iov
        - Src:             'make_checksum_iov.c:60,11'
          Dst:             alloc_data
        - Src:             'make_checksum_iov.c:72,5'
          Dst:             zapfree
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './crypto_int.h:602,17'
          Dst:             find_enctype
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_make_random_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/make_random_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          144
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - find_enctype
        - k5alloc
        - krb5_c_random_make_octets
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'make_random_key.c:41,11'
          Dst:             find_enctype
        - Src:             'make_random_key.c:49,13'
          Dst:             k5alloc
        - Src:             'make_random_key.c:52,28'
          Dst:             k5alloc
        - Src:             'make_random_key.c:59,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'make_random_key.c:71,9'
          Dst:             zapfree
        - Src:             'make_random_key.c:74,5'
          Dst:             zapfree
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_c_mandatory_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/mandatory_sumtype.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'mandatory_sumtype.c:34,11'
          Dst:             find_enctype
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    valid_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_valid_enctype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:389,12'
          Dst:             krb5_c_valid_enctype
    - functionName:    is_coll_proof_cksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_is_coll_proof_cksum
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:383,12'
          Dst:             krb5_c_is_coll_proof_cksum
    - functionName:    is_keyed_cksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_is_keyed_cksum
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:377,12'
          Dst:             krb5_c_is_keyed_cksum
    - functionName:    valid_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_valid_cksumtype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:371,12'
          Dst:             krb5_c_valid_cksumtype
    - functionName:    krb5_decrypt_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          118
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - alloc_data
        - krb5_c_block_size
        - krb5_c_decrypt
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:350,15'
          Dst:             krb5_c_block_size
        - Src:             'old_api_glue.c:354,17'
          Dst:             make_data
        - Src:             'old_api_glue.c:357,11'
          Dst:             alloc_data
        - Src:             'old_api_glue.c:361,11'
          Dst:             krb5_c_decrypt
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    krb5_encrypt_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          152
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - alloc_data
        - krb5_c_block_size
        - krb5_c_encrypt
        - krb5_c_encrypt_length
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:315,11'
          Dst:             krb5_c_encrypt_length
        - Src:             'old_api_glue.c:320,15'
          Dst:             krb5_c_block_size
        - Src:             'old_api_glue.c:324,17'
          Dst:             make_data
        - Src:             'old_api_glue.c:330,11'
          Dst:             alloc_data
        - Src:             'old_api_glue.c:334,11'
          Dst:             krb5_c_encrypt
    - functionName:    krb5_random_confounder
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_random_make_octets
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:302,29'
          Dst:             make_data
        - Src:             'old_api_glue.c:304,12'
          Dst:             krb5_c_random_make_octets
    - functionName:    krb5_verify_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - guess_enctype
        - krb5_c_verify_checksum
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:277,23'
          Dst:             make_data
        - Src:             'old_api_glue.c:283,28'
          Dst:             guess_enctype
        - Src:             'old_api_glue.c:289,11'
          Dst:             krb5_c_verify_checksum
    - functionName:    guess_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          83
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - find_cksumtype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:223,11'
          Dst:             find_cksumtype
    - functionName:    krb5_calculate_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          135
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - guess_enctype
        - krb5_c_make_checksum
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:239,23'
          Dst:             make_data
        - Src:             'old_api_glue.c:245,28'
          Dst:             guess_enctype
        - Src:             'old_api_glue.c:251,11'
          Dst:             krb5_c_make_checksum
    - functionName:    krb5_checksum_size
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_c_checksum_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:208,9'
          Dst:             krb5_c_checksum_length
    - functionName:    krb5_encrypt_size
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_c_encrypt_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:197,9'
          Dst:             krb5_c_encrypt_length
    - functionName:    krb5_use_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_eblock_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_random_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_c_make_random_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:167,11'
          Dst:             krb5_c_make_random_key
    - functionName:    krb5_finish_random_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_init_random_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_random_seed
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:142,22'
          Dst:             make_data
        - Src:             'old_api_glue.c:144,12'
          Dst:             krb5_c_random_seed
    - functionName:    krb5_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_string_to_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:134,12'
          Dst:             krb5_c_string_to_key
    - functionName:    krb5_finish_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_process_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          122
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_c_block_size
        - krb5_c_decrypt
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:94,15'
          Dst:             krb5_c_block_size
        - Src:             'old_api_glue.c:98,17'
          Dst:             make_data
        - Src:             'old_api_glue.c:103,25'
          Dst:             make_data
        - Src:             'old_api_glue.c:108,15'
          Dst:             make_data
        - Src:             'old_api_glue.c:110,12'
          Dst:             krb5_c_decrypt
    - functionName:    krb5_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/old_api_glue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          135
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - krb5_c_block_size
        - krb5_c_encrypt
        - krb5_c_encrypt_length
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'old_api_glue.c:59,15'
          Dst:             krb5_c_block_size
        - Src:             'old_api_glue.c:63,17'
          Dst:             make_data
        - Src:             'old_api_glue.c:67,14'
          Dst:             make_data
        - Src:             'old_api_glue.c:73,11'
          Dst:             krb5_c_encrypt_length
        - Src:             'old_api_glue.c:77,26'
          Dst:             make_data
        - Src:             'old_api_glue.c:79,12'
          Dst:             krb5_c_encrypt
    - functionName:    krb5_c_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_prf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prf.c:78,11'
          Dst:             krb5_k_create_key
        - Src:             'prf.c:81,11'
          Dst:             krb5_k_prf
        - Src:             'prf.c:82,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          110
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - find_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prf.c:55,5'
          Dst:             __assert_fail
        - Src:             'prf.c:56,5'
          Dst:             __assert_fail
        - Src:             'prf.c:58,11'
          Dst:             find_enctype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_prf_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - find_enctype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'prf.c:40,5'
          Dst:             __assert_fail
        - Src:             'prf.c:41,11'
          Dst:             find_enctype
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    krb5int_aes2_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf_aes2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_sp800_108_counter_hmac
        - string2data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prf_aes2.c:39,23'
          Dst:             string2data
        - Src:             'prf_aes2.c:41,12'
          Dst:             k5_sp800_108_counter_hmac
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_dk_cmac_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5_k_free_key
        - krb5int_cmac_checksum
        - krb5int_derive_key
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prf_cmac.c:34,26'
          Dst:             make_data
        - Src:             'prf_cmac.c:45,11'
          Dst:             krb5int_derive_key
        - Src:             'prf_cmac.c:51,11'
          Dst:             krb5int_cmac_checksum
        - Src:             'prf_cmac.c:56,5'
          Dst:             krb5_k_free_key
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_dk_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf_dk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          159
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - alloc_data
        - empty_data
        - krb5_k_free_key
        - krb5int_derive_key
        - make_data
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prf_dk.c:36,23'
          Dst:             empty_data
        - Src:             'prf_dk.c:36,48'
          Dst:             make_data
        - Src:             'prf_dk.c:41,11'
          Dst:             alloc_data
        - Src:             'prf_dk.c:51,11'
          Dst:             krb5int_derive_key
        - Src:             'prf_dk.c:67,5'
          Dst:             zapfree
        - Src:             'prf_dk.c:68,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5int_arcfour_prf
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prf_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - krb5int_hmac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'prf_rc4.c:35,5'
          Dst:             __assert_fail
        - Src:             'prf_rc4.c:38,12'
          Dst:             krb5int_hmac
    - functionName:    read_entropy_from_device
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - close
        - fcntl
        - fstat
        - open
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prng.c:78,10'
          Dst:             open
        - Src:             'prng.c:81,5'
          Dst:             fcntl
        - Src:             'prng.c:82,9'
          Dst:             fstat
        - Src:             'prng.c:86,17'
          Dst:             read
        - Src:             'prng.c:95,5'
          Dst:             close
    - functionName:    krb5_c_random_os_entropy
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_os_entropy
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getentropy
        - read_entropy_from_device
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prng.c:109,13'
          Dst:             getentropy
        - Src:             'prng.c:148,12'
          Dst:             read_entropy_from_device
    - functionName:    getentropy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_random_make_octets
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_os_entropy
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'prng.c:158,11'
          Dst:             get_os_entropy
    - functionName:    krb5_c_random_add_entropy
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_random_seed
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/prng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_random_add_entropy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'prng.c:32,12'
          Dst:             krb5_c_random_add_entropy
    - functionName:    eighth_byte
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/random_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          58
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_rand2key_des3
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/random_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - eighth_byte
        - k5_des_fixup_key_parity
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'random_to_key.c:97,9'
          Dst:             eighth_byte
        - Src:             'random_to_key.c:98,9'
          Dst:             k5_des_fixup_key_parity
    - functionName:    k5_rand2key_direct
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/random_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_random_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/random_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - explicit_bzero
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'random_to_key.c:50,11'
          Dst:             find_enctype
        - Src:             'random_to_key.c:59,9'
          Dst:             explicit_bzero
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5int_aes2_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pbkdf2_string_to_key
        - string2data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_pbkdf2.c:212,24'
          Dst:             string2data
        - Src:             's2k_pbkdf2.c:214,12'
          Dst:             pbkdf2_string_to_key
    - functionName:    string2data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2255,27'
          Dst:             strlen
        - Src:             '../../../include/k5-int.h:2255,12'
          Dst:             make_data
    - functionName:    pbkdf2_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          333
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - alloc_data
        - empty_data
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5int_derive_keyblock
        - krb5int_pbkdf2_hmac
        - load_32_be
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_pbkdf2.c:120,23'
          Dst:             empty_data
        - Src:             's2k_pbkdf2.c:126,22'
          Dst:             load_32_be
        - Src:             's2k_pbkdf2.c:149,15'
          Dst:             alloc_data
        - Src:             's2k_pbkdf2.c:163,11'
          Dst:             krb5int_pbkdf2_hmac
        - Src:             's2k_pbkdf2.c:167,11'
          Dst:             krb5_k_create_key
        - Src:             's2k_pbkdf2.c:171,11'
          Dst:             krb5int_derive_keyblock
        - Src:             's2k_pbkdf2.c:179,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5int_camellia_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pbkdf2_string_to_key
        - string2data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_pbkdf2.c:201,24'
          Dst:             string2data
        - Src:             's2k_pbkdf2.c:203,12'
          Dst:             pbkdf2_string_to_key
    - functionName:    krb5int_aes_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pbkdf2_string_to_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_pbkdf2.c:190,12'
          Dst:             pbkdf2_string_to_key
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    krb5int_dk_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          237
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - k5alloc
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5int_derive_keyblock
        - krb5int_nfold
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_pbkdf2.c:52,14'
          Dst:             k5alloc
        - Src:             's2k_pbkdf2.c:55,18'
          Dst:             k5alloc
        - Src:             's2k_pbkdf2.c:58,19'
          Dst:             k5alloc
        - Src:             's2k_pbkdf2.c:69,5'
          Dst:             krb5int_nfold
        - Src:             's2k_pbkdf2.c:81,11'
          Dst:             krb5_k_create_key
        - Src:             's2k_pbkdf2.c:90,11'
          Dst:             krb5int_derive_keyblock
        - Src:             's2k_pbkdf2.c:96,5'
          Dst:             zapfree
        - Src:             's2k_pbkdf2.c:97,5'
          Dst:             zapfree
        - Src:             's2k_pbkdf2.c:98,5'
          Dst:             zapfree
        - Src:             's2k_pbkdf2.c:99,5'
          Dst:             krb5_k_free_key
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5memdup0
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2312
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2313,17'
          Dst:             k5alloc
    - functionName:    krb5int_arcfour_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/s2k_rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          130
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - k5_utf8_to_utf16le
        - k5memdup0
        - make_data
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             's2k_rc4.c:24,12'
          Dst:             k5memdup0
        - Src:             's2k_rc4.c:27,11'
          Dst:             k5_utf8_to_utf16le
        - Src:             's2k_rc4.c:28,5'
          Dst:             zapfree
        - Src:             's2k_rc4.c:34,16'
          Dst:             make_data
        - Src:             's2k_rc4.c:35,16'
          Dst:             make_data
        - Src:             's2k_rc4.c:39,5'
          Dst:             zapfree
    - functionName:    krb5_c_free_state
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/state.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'state.c:55,11'
          Dst:             find_enctype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_init_state
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/state.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'state.c:43,11'
          Dst:             find_enctype
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5_c_string_to_key_with_params
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/string_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          141
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - empty_data
        - find_enctype
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'string_to_key.c:46,23'
          Dst:             empty_data
        - Src:             'string_to_key.c:50,11'
          Dst:             find_enctype
        - Src:             'string_to_key.c:73,9'
          Dst:             zapfree
    - functionName:    krb5_c_string_to_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/string_to_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5_c_string_to_key_with_params
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'string_to_key.c:35,12'
          Dst:             krb5_c_string_to_key_with_params
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_valid_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/valid_cksumtype.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_cksumtype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'valid_cksumtype.c:35,11'
          Dst:             find_cksumtype
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_verify_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/verify_checksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_verify_checksum
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_checksum.c:91,15'
          Dst:             krb5_k_create_key
        - Src:             'verify_checksum.c:95,11'
          Dst:             krb5_k_verify_checksum
        - Src:             'verify_checksum.c:96,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_verify_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/verify_checksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          192
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - find_cksumtype
        - k5_bcmp
        - krb5_k_make_checksum
        - krb5int_c_mandatory_cksumtype
        - make_data
        - verify_key
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_checksum.c:48,15'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'verify_checksum.c:53,11'
          Dst:             find_cksumtype
        - Src:             'verify_checksum.c:57,11'
          Dst:             verify_key
        - Src:             'verify_checksum.c:62,18'
          Dst:             make_data
        - Src:             'verify_checksum.c:70,11'
          Dst:             krb5_k_make_checksum
        - Src:             'verify_checksum.c:75,15'
          Dst:             k5_bcmp
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './crypto_int.h:602,17'
          Dst:             find_enctype
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_enctype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_verify_checksum_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/verify_checksum_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_create_key
        - krb5_k_free_key
        - krb5_k_verify_checksum_iov
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_checksum_iov.c:95,15'
          Dst:             krb5_k_create_key
        - Src:             'verify_checksum_iov.c:99,11'
          Dst:             krb5_k_verify_checksum_iov
        - Src:             'verify_checksum_iov.c:101,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5_k_verify_checksum_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/verify_checksum_iov.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          208
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - alloc_data
        - find_cksumtype
        - k5_bcmp
        - krb5int_c_locate_iov
        - krb5int_c_mandatory_cksumtype
        - verify_key
        - zapfree
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'verify_checksum_iov.c:44,15'
          Dst:             krb5int_c_mandatory_cksumtype
        - Src:             'verify_checksum_iov.c:49,11'
          Dst:             find_cksumtype
        - Src:             'verify_checksum_iov.c:53,11'
          Dst:             verify_key
        - Src:             'verify_checksum_iov.c:57,16'
          Dst:             krb5int_c_locate_iov
        - Src:             'verify_checksum_iov.c:68,11'
          Dst:             alloc_data
        - Src:             'verify_checksum_iov.c:74,19'
          Dst:             k5_bcmp
        - Src:             'verify_checksum_iov.c:78,5'
          Dst:             zapfree
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - find_enctype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './crypto_int.h:602,17'
          Dst:             find_enctype
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    leftshift_onebit
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          65
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_block
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/./../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    padding
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xor_128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          63
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - load_32_n
        - store_32_n
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:48,20'
          Dst:             load_32_n
        - Src:             'cmac.c:48,38'
          Dst:             load_32_n
        - Src:             'cmac.c:48,9'
          Dst:             store_32_n
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate_subkey
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - encrypt_block
        - leftshift_onebit
        - make_data
        - xor_128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:79,9'
          Dst:             make_data
        - Src:             'cmac.c:80,11'
          Dst:             encrypt_block
        - Src:             'cmac.c:86,9'
          Dst:             leftshift_onebit
        - Src:             'cmac.c:88,9'
          Dst:             leftshift_onebit
        - Src:             'cmac.c:89,9'
          Dst:             xor_128
        - Src:             'cmac.c:94,9'
          Dst:             leftshift_onebit
        - Src:             'cmac.c:96,9'
          Dst:             leftshift_onebit
        - Src:             'cmac.c:97,9'
          Dst:             xor_128
    - functionName:    iov_total_length
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/./../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_cmac_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          264
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - generate_subkey
        - iov_total_length
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - make_data
        - padding
        - xor_128
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:140,5'
          Dst:             __assert_fail
        - Src:             'cmac.c:145,14'
          Dst:             iov_total_length
        - Src:             'cmac.c:148,11'
          Dst:             generate_subkey
        - Src:             'cmac.c:164,19'
          Dst:             make_data
        - Src:             'cmac.c:168,9'
          Dst:             make_data
        - Src:             'cmac.c:171,5'
          Dst:             k5_iov_cursor_init
        - Src:             'cmac.c:173,9'
          Dst:             k5_iov_cursor_get
        - Src:             'cmac.c:181,5'
          Dst:             k5_iov_cursor_get
        - Src:             'cmac.c:184,9'
          Dst:             xor_128
        - Src:             'cmac.c:186,9'
          Dst:             padding
        - Src:             'cmac.c:187,9'
          Dst:             xor_128
        - Src:             'cmac.c:191,19'
          Dst:             make_data
        - Src:             'cmac.c:196,5'
          Dst:             __assert_fail
    - functionName:    krb5int_hmac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_hmac_keyblock
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:121,12'
          Dst:             krb5int_hmac_keyblock
    - functionName:    krb5int_hmac_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          325
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - k5alloc
        - k5calloc
        - make_data
        - zapfree
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:70,14'
          Dst:             k5alloc
        - Src:             'hmac.c:73,13'
          Dst:             k5alloc
        - Src:             'hmac.c:76,17'
          Dst:             k5calloc
        - Src:             'hmac.c:87,25'
          Dst:             make_data
        - Src:             'hmac.c:89,15'
          Dst:             make_data
        - Src:             'hmac.c:101,25'
          Dst:             make_data
        - Src:             'hmac.c:103,25'
          Dst:             make_data
        - Src:             'hmac.c:110,5'
          Dst:             zapfree
        - Src:             'hmac.c:111,5'
          Dst:             zapfree
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_block
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/./../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_derive_random_rfc3961
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          198
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - alloc_data
        - empty_data
        - encrypt_block
        - krb5int_nfold
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf.c:146,23'
          Dst:             empty_data
        - Src:             'kdf.c:157,11'
          Dst:             alloc_data
        - Src:             'kdf.c:165,9'
          Dst:             krb5int_nfold
        - Src:             'kdf.c:172,15'
          Dst:             encrypt_block
        - Src:             'kdf.c:186,5'
          Dst:             zapfree
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sp800_108_feedback_cmac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          237
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - alloc_data
        - empty_data
        - krb5int_cmac_checksum
        - make_data
        - store_32_be
        - zapfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf.c:93,11'
          Dst:             alloc_data
        - Src:             'kdf.c:102,19'
          Dst:             make_data
        - Src:             'kdf.c:108,19'
          Dst:             make_data
        - Src:             'kdf.c:111,19'
          Dst:             empty_data
        - Src:             'kdf.c:114,19'
          Dst:             make_data
        - Src:             'kdf.c:115,5'
          Dst:             store_32_be
        - Src:             'kdf.c:119,9'
          Dst:             store_32_be
        - Src:             'kdf.c:122,15'
          Dst:             krb5int_cmac_checksum
        - Src:             'kdf.c:136,5'
          Dst:             zapfree
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sp800_108_counter_hmac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          169
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - alloc_data
        - k5memcpy
        - krb5int_hmac
        - make_data
        - store_32_be
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf.c:46,11'
          Dst:             alloc_data
        - Src:             'kdf.c:52,19'
          Dst:             make_data
        - Src:             'kdf.c:53,5'
          Dst:             store_32_be
        - Src:             'kdf.c:59,19'
          Dst:             make_data
        - Src:             'kdf.c:65,19'
          Dst:             make_data
        - Src:             'kdf.c:66,5'
          Dst:             store_32_be
        - Src:             'kdf.c:68,11'
          Dst:             krb5int_hmac
        - Src:             'kdf.c:70,9'
          Dst:             k5memcpy
        - Src:             'kdf.c:71,5'
          Dst:             zapfree
    - functionName:    printd
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - __ctype_b_loc
        - printf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pbkdf2.c:57,5'
          Dst:             printf
        - Src:             'pbkdf2.c:60,9'
          Dst:             printf
        - Src:             'pbkdf2.c:62,13'
          Dst:             printf
        - Src:             'pbkdf2.c:64,13'
          Dst:             printf
        - Src:             'pbkdf2.c:65,9'
          Dst:             printf
        - Src:             'pbkdf2.c:68,26'
          Dst:             __ctype_b_loc
        - Src:             'pbkdf2.c:68,13'
          Dst:             printf
        - Src:             'pbkdf2.c:71,5'
          Dst:             printf
    - functionName:    printf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_hmac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_hmac_keyblock
        - printd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pbkdf2.c:89,9'
          Dst:             printd
        - Src:             'pbkdf2.c:92,11'
          Dst:             krb5int_hmac_keyblock
        - Src:             'pbkdf2.c:94,9'
          Dst:             printd
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    F
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          175
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - k5_hmac
        - make_data
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pbkdf2.c:110,5'
          Dst:             store_32_be
        - Src:             'pbkdf2.c:114,13'
          Dst:             make_data
        - Src:             'pbkdf2.c:116,11'
          Dst:             make_data
        - Src:             'pbkdf2.c:118,11'
          Dst:             k5_hmac
        - Src:             'pbkdf2.c:128,15'
          Dst:             k5_hmac
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pbkdf2
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          218
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - F
        - abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pbkdf2.c:149,9'
          Dst:             abort
        - Src:             'pbkdf2.c:152,9'
          Dst:             abort
        - Src:             'pbkdf2.c:174,15'
          Dst:             F
    - functionName:    krb5int_pbkdf2_hmac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/pbkdf2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          123
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - make_data
        - pbkdf2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pbkdf2.c:201,5'
          Dst:             __assert_fail
        - Src:             'pbkdf2.c:203,13'
          Dst:             make_data
        - Src:             'pbkdf2.c:217,11'
          Dst:             pbkdf2
    - functionName:    k5_des_fixup_key_parity
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/des_keys.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mit_des_fixup_key_parity
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'des_keys.c:35,5'
          Dst:             mit_des_fixup_key_parity
    - functionName:    mit_des_check_key_parity
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_parity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          128
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mit_des_fixup_key_parity
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_parity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          120
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_total_length
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validate_and_schedule
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/des3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - iov_total_length
        - mit_des3_key_sched
      functionUses:    2
      BranchProfiles:
        - Branch String:   'des3.c:45,5'
          Branch Sides:    []
      Callsites:
        - Src:             'des3.c:40,9'
          Dst:             iov_total_length
        - Src:             'des3.c:45,13'
          Dst:             mit_des3_key_sched
    - functionName:    k5_des3_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/des3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - explicit_bzero
        - krb5int_des3_cbc_decrypt
        - validate_and_schedule
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'des3.c:84,11'
          Dst:             validate_and_schedule
        - Src:             'des3.c:89,5'
          Dst:             krb5int_des3_cbc_decrypt
        - Src:             'des3.c:94,5'
          Dst:             explicit_bzero
    - functionName:    k5_des3_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/des3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - explicit_bzero
        - krb5int_des3_cbc_encrypt
        - validate_and_schedule
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'des3.c:62,11'
          Dst:             validate_and_schedule
        - Src:             'des3.c:67,5'
          Dst:             krb5int_des3_cbc_encrypt
        - Src:             'des3.c:72,5'
          Dst:             explicit_bzero
    - functionName:    k5_arcfour_byte
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          73
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5_arcfour_crypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_arcfour_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'rc4.c:65,28'
          Dst:             k5_arcfour_byte
    - functionName:    k5_arcfour_init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          135
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_arcfour_init_state
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          54
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_arcfour_docrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/rc4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          232
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - k5_arcfour_crypt
        - k5_arcfour_init
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc4.c:121,19'
          Dst:             k5_arcfour_init
        - Src:             'rc4.c:133,15'
          Dst:             k5_arcfour_init
        - Src:             'rc4.c:145,13'
          Dst:             k5_arcfour_crypt
        - Src:             'rc4.c:150,9'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xorblock
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - load_32_n
        - store_32_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:161,20'
          Dst:             load_32_n
        - Src:             'aes.c:161,41'
          Dst:             load_32_n
        - Src:             'aes.c:161,9'
          Dst:             store_32_n
    - functionName:    aes_key_cleanup
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:387,5'
          Dst:             zapfree
    - functionName:    aes_init_state
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cbc_dec
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - abort
        - k5_aes_decrypt
        - xorblock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:227,5'
          Dst:             __assert_fail
        - Src:             'aes.c:231,13'
          Dst:             k5_aes_decrypt
        - Src:             'aes.c:232,13'
          Dst:             abort
        - Src:             'aes.c:233,9'
          Dst:             xorblock
    - functionName:    expand_dec_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - k5_aes_decrypt_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:196,14'
          Dst:             k5_aes_decrypt_key
        - Src:             'aes.c:198,9'
          Dst:             abort
    - functionName:    krb5int_aes_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          202
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - cbc_dec
        - expand_dec_key
        - init_key_cache
        - iov_cursor_advance
        - iov_cursor_contig_blocks
        - iov_cursor_ptr
        - iov_total_length
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:310,9'
          Dst:             init_key_cache
        - Src:             'aes.c:312,5'
          Dst:             expand_dec_key
        - Src:             'aes.c:314,5'
          Dst:             k5_iov_cursor_init
        - Src:             'aes.c:316,20'
          Dst:             iov_total_length
        - Src:             'aes.c:320,9'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:322,9'
          Dst:             cbc_dec
        - Src:             'aes.c:323,9'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:333,19'
          Dst:             iov_cursor_contig_blocks
        - Src:             'aes.c:338,26'
          Dst:             iov_cursor_ptr
        - Src:             'aes.c:338,13'
          Dst:             cbc_dec
        - Src:             'aes.c:339,13'
          Dst:             iov_cursor_advance
        - Src:             'aes.c:342,13'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:343,13'
          Dst:             cbc_dec
        - Src:             'aes.c:344,13'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:350,5'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:351,5'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:358,5'
          Dst:             cbc_dec
        - Src:             'aes.c:363,5'
          Dst:             cbc_dec
        - Src:             'aes.c:366,5'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:367,5'
          Dst:             k5_iov_cursor_put
    - functionName:    init_key_cache
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_total_length
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_contig_blocks
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_ptr
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_advance
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cbc_enc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - k5_aes_encrypt
        - xorblock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:210,9'
          Dst:             xorblock
        - Src:             'aes.c:211,13'
          Dst:             k5_aes_encrypt
        - Src:             'aes.c:212,13'
          Dst:             abort
    - functionName:    expand_enc_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - k5_aes_encrypt_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:184,14'
          Dst:             k5_aes_encrypt_key
        - Src:             'aes.c:186,9'
          Dst:             abort
    - functionName:    krb5int_aes_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/aes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          182
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - cbc_enc
        - expand_enc_key
        - init_key_cache
        - iov_cursor_advance
        - iov_cursor_contig_blocks
        - iov_cursor_ptr
        - iov_total_length
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'aes.c:247,9'
          Dst:             init_key_cache
        - Src:             'aes.c:249,5'
          Dst:             expand_enc_key
        - Src:             'aes.c:251,5'
          Dst:             k5_iov_cursor_init
        - Src:             'aes.c:253,20'
          Dst:             iov_total_length
        - Src:             'aes.c:256,9'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:258,9'
          Dst:             cbc_enc
        - Src:             'aes.c:259,9'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:269,19'
          Dst:             iov_cursor_contig_blocks
        - Src:             'aes.c:274,26'
          Dst:             iov_cursor_ptr
        - Src:             'aes.c:274,13'
          Dst:             cbc_enc
        - Src:             'aes.c:275,13'
          Dst:             iov_cursor_advance
        - Src:             'aes.c:278,13'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:279,13'
          Dst:             cbc_enc
        - Src:             'aes.c:280,13'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:287,5'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:288,5'
          Dst:             k5_iov_cursor_get
        - Src:             'aes.c:289,5'
          Dst:             cbc_enc
        - Src:             'aes.c:290,5'
          Dst:             cbc_enc
        - Src:             'aes.c:291,5'
          Dst:             k5_iov_cursor_put
        - Src:             'aes.c:292,5'
          Dst:             k5_iov_cursor_put
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    cbc_dec
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - abort
        - krb5int_camellia_dec_blk
        - xorblock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:104,5'
          Dst:             __assert_fail
        - Src:             'camellia.c:108,13'
          Dst:             krb5int_camellia_dec_blk
        - Src:             'camellia.c:110,13'
          Dst:             abort
        - Src:             'camellia.c:111,9'
          Dst:             xorblock
    - functionName:    xorblock
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - load_32_n
        - store_32_n
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:50,20'
          Dst:             load_32_n
        - Src:             'camellia.c:50,41'
          Dst:             load_32_n
        - Src:             'camellia.c:50,9'
          Dst:             store_32_n
    - functionName:    load_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_n
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_dec_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - krb5int_camellia_dec_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:80,9'
          Dst:             krb5int_camellia_dec_key
        - Src:             'camellia.c:82,9'
          Dst:             abort
    - functionName:    camellia_key_cleanup
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:294,5'
          Dst:             zapfree
    - functionName:    camellia_init_state
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_cbc_mac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cbc_enc
        - expand_enc_key
        - init_key_cache
        - k5_iov_cursor_get
        - k5_iov_cursor_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:260,9'
          Dst:             init_key_cache
        - Src:             'camellia.c:262,5'
          Dst:             expand_enc_key
        - Src:             'camellia.c:269,5'
          Dst:             k5_iov_cursor_init
        - Src:             'camellia.c:270,12'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:271,9'
          Dst:             cbc_enc
    - functionName:    init_key_cache
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_enc_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - krb5int_camellia_enc_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:70,9'
          Dst:             krb5int_camellia_enc_key
        - Src:             'camellia.c:72,9'
          Dst:             abort
    - functionName:    cbc_enc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - krb5int_camellia_enc_blk
        - xorblock
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:90,9'
          Dst:             xorblock
        - Src:             'camellia.c:91,13'
          Dst:             krb5int_camellia_enc_blk
        - Src:             'camellia.c:93,13'
          Dst:             abort
    - functionName:    krb5int_camellia_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          202
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - cbc_dec
        - expand_dec_key
        - init_key_cache
        - iov_cursor_advance
        - iov_cursor_contig_blocks
        - iov_cursor_ptr
        - iov_total_length
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:187,9'
          Dst:             init_key_cache
        - Src:             'camellia.c:189,5'
          Dst:             expand_dec_key
        - Src:             'camellia.c:191,5'
          Dst:             k5_iov_cursor_init
        - Src:             'camellia.c:193,20'
          Dst:             iov_total_length
        - Src:             'camellia.c:197,9'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:199,9'
          Dst:             cbc_dec
        - Src:             'camellia.c:200,9'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:210,19'
          Dst:             iov_cursor_contig_blocks
        - Src:             'camellia.c:215,26'
          Dst:             iov_cursor_ptr
        - Src:             'camellia.c:215,13'
          Dst:             cbc_dec
        - Src:             'camellia.c:216,13'
          Dst:             iov_cursor_advance
        - Src:             'camellia.c:219,13'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:220,13'
          Dst:             cbc_dec
        - Src:             'camellia.c:221,13'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:227,5'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:228,5'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:235,5'
          Dst:             cbc_dec
        - Src:             'camellia.c:240,5'
          Dst:             cbc_dec
        - Src:             'camellia.c:243,5'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:244,5'
          Dst:             k5_iov_cursor_put
    - functionName:    iov_total_length
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_contig_blocks
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_ptr
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iov_cursor_advance
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/./../../krb/crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/enc_provider/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          182
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - cbc_enc
        - expand_enc_key
        - init_key_cache
        - iov_cursor_advance
        - iov_cursor_contig_blocks
        - iov_cursor_ptr
        - iov_total_length
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:125,9'
          Dst:             init_key_cache
        - Src:             'camellia.c:127,5'
          Dst:             expand_enc_key
        - Src:             'camellia.c:129,5'
          Dst:             k5_iov_cursor_init
        - Src:             'camellia.c:131,20'
          Dst:             iov_total_length
        - Src:             'camellia.c:134,9'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:136,9'
          Dst:             cbc_enc
        - Src:             'camellia.c:137,9'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:147,19'
          Dst:             iov_cursor_contig_blocks
        - Src:             'camellia.c:152,26'
          Dst:             iov_cursor_ptr
        - Src:             'camellia.c:152,13'
          Dst:             cbc_enc
        - Src:             'camellia.c:153,13'
          Dst:             iov_cursor_advance
        - Src:             'camellia.c:156,13'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:157,13'
          Dst:             cbc_enc
        - Src:             'camellia.c:158,13'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:165,5'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:166,5'
          Dst:             k5_iov_cursor_get
        - Src:             'camellia.c:167,5'
          Dst:             cbc_enc
        - Src:             'camellia.c:168,5'
          Dst:             cbc_enc
        - Src:             'camellia.c:169,5'
          Dst:             k5_iov_cursor_put
        - Src:             'camellia.c:170,5'
          Dst:             k5_iov_cursor_put
    - functionName:    k5_md4_hash
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/hash_md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - krb5int_MD4Final
        - krb5int_MD4Init
        - krb5int_MD4Update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hash_md4.c:42,5'
          Dst:             krb5int_MD4Init
        - Src:             'hash_md4.c:47,13'
          Dst:             krb5int_MD4Update
        - Src:             'hash_md4.c:51,5'
          Dst:             krb5int_MD4Final
    - functionName:    k5_md5_hash
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/hash_md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - krb5int_MD5Final
        - krb5int_MD5Init
        - krb5int_MD5Update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hash_md5.c:42,5'
          Dst:             krb5int_MD5Init
        - Src:             'hash_md5.c:47,13'
          Dst:             krb5int_MD5Update
        - Src:             'hash_md5.c:51,5'
          Dst:             krb5int_MD5Final
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    k5_sha1_hash
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/hash_sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          143
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - shsFinal
        - shsInit
        - shsUpdate
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hash_sha1.c:42,5'
          Dst:             shsInit
        - Src:             'hash_sha1.c:47,13'
          Dst:             shsUpdate
        - Src:             'hash_sha1.c:51,5'
          Dst:             shsFinal
        - Src:             'hash_sha1.c:54,9'
          Dst:             store_32_be
    - functionName:    k5_sha384_hash
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/hash_sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_sha384_final
        - k5_sha384_init
        - k5_sha384_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hash_sha2.c:68,5'
          Dst:             k5_sha384_init
        - Src:             'hash_sha2.c:72,13'
          Dst:             k5_sha384_update
        - Src:             'hash_sha2.c:74,5'
          Dst:             k5_sha384_final
    - functionName:    k5_sha256_hash
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/hash_provider/hash_sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_sha256_final
        - k5_sha256_init
        - k5_sha256_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hash_sha2.c:48,5'
          Dst:             k5_sha256_init
        - Src:             'hash_sha2.c:52,13'
          Dst:             k5_sha256_update
        - Src:             'hash_sha2.c:54,5'
          Dst:             k5_sha256_final
    - functionName:    k5_iov_cursor_put
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - k5memcpy
        - next_iov_to_process
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'aead.c:215,9'
          Dst:             k5memcpy
        - Src:             'aead.c:221,31'
          Dst:             next_iov_to_process
    - functionName:    k5memcpy
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    next_iov_to_process
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          121
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_iov_cursor_get
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          179
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - k5memcpy
        - next_iov_to_process
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'aead.c:182,9'
          Dst:             k5memcpy
        - Src:             'aead.c:188,30'
          Dst:             next_iov_to_process
    - functionName:    k5_iov_cursor_init
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - next_iov_to_process
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'aead.c:162,22'
          Dst:             next_iov_to_process
    - functionName:    krb5int_c_padding_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_c_iov_decrypt_stream
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          317
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - calloc
        - empty_data
        - krb5int_c_locate_iov
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'aead.c:63,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'aead.c:64,5'
          Dst:             __assert_fail
        - Src:             'aead.c:72,11'
          Dst:             calloc
        - Src:             'aead.c:79,19'
          Dst:             make_data
        - Src:             'aead.c:102,19'
          Dst:             empty_data
        - Src:             'aead.c:106,19'
          Dst:             make_data
        - Src:             'aead.c:110,5'
          Dst:             __assert_fail
    - functionName:    krb5int_c_locate_iov
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_dk_cmac_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_dk_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_free_key
        - krb5int_cmac_checksum
        - krb5int_derive_key
        - make_data
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_dk_cmac.c:44,14'
          Dst:             make_data
        - Src:             'checksum_dk_cmac.c:45,5'
          Dst:             store_32_be
        - Src:             'checksum_dk_cmac.c:47,11'
          Dst:             krb5int_derive_key
        - Src:             'checksum_dk_cmac.c:53,11'
          Dst:             krb5int_cmac_checksum
        - Src:             'checksum_dk_cmac.c:57,5'
          Dst:             krb5_k_free_key
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_dk_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_dk_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_free_key
        - krb5int_derive_key
        - krb5int_hmac
        - make_data
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_dk_hmac.c:45,14'
          Dst:             make_data
        - Src:             'checksum_dk_hmac.c:46,5'
          Dst:             store_32_be
        - Src:             'checksum_dk_hmac.c:48,11'
          Dst:             krb5int_derive_key
        - Src:             'checksum_dk_hmac.c:53,11'
          Dst:             krb5int_hmac
        - Src:             'checksum_dk_hmac.c:57,5'
          Dst:             krb5_k_free_key
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_etm_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          120
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - alloc_data
        - empty_data
        - krb5int_derive_random
        - krb5int_hmac_keyblock
        - make_data
        - store_32_be
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_etm.c:42,28'
          Dst:             make_data
        - Src:             'checksum_etm.c:42,54'
          Dst:             empty_data
        - Src:             'checksum_etm.c:46,5'
          Dst:             store_32_be
        - Src:             'checksum_etm.c:48,18'
          Dst:             make_data
        - Src:             'checksum_etm.c:49,11'
          Dst:             alloc_data
        - Src:             'checksum_etm.c:52,11'
          Dst:             krb5int_derive_random
        - Src:             'checksum_etm.c:60,11'
          Dst:             krb5int_hmac_keyblock
        - Src:             'checksum_etm.c:63,5'
          Dst:             zapfree
    - functionName:    k5_hmac_md5
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_hmac_md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_hmac_keyblock
        - make_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_hmac_md5.c:109,22'
          Dst:             make_data
        - Src:             'checksum_hmac_md5.c:121,12'
          Dst:             krb5int_hmac_keyblock
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_hmacmd5_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_hmac_md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          251
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - alloc_data
        - empty_data
        - k5calloc
        - krb5int_arcfour_translate_usage
        - krb5int_hmac
        - krb5int_hmac_keyblock
        - make_data
        - store_32_le
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'checksum_hmac_md5.c:46,20'
          Dst:             empty_data
        - Src:             'checksum_hmac_md5.c:46,44'
          Dst:             empty_data
        - Src:             'checksum_hmac_md5.c:53,15'
          Dst:             alloc_data
        - Src:             'checksum_hmac_md5.c:58,20'
          Dst:             make_data
        - Src:             'checksum_hmac_md5.c:59,15'
          Dst:             krb5int_hmac
        - Src:             'checksum_hmac_md5.c:69,16'
          Dst:             krb5int_arcfour_translate_usage
        - Src:             'checksum_hmac_md5.c:70,5'
          Dst:             store_32_le
        - Src:             'checksum_hmac_md5.c:71,16'
          Dst:             k5calloc
        - Src:             'checksum_hmac_md5.c:75,24'
          Dst:             make_data
        - Src:             'checksum_hmac_md5.c:77,11'
          Dst:             alloc_data
        - Src:             'checksum_hmac_md5.c:87,11'
          Dst:             krb5int_hmac_keyblock
        - Src:             'checksum_hmac_md5.c:90,5'
          Dst:             zapfree
        - Src:             'checksum_hmac_md5.c:91,5'
          Dst:             zapfree
    - functionName:    krb5int_unkeyed_checksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/checksum_unkeyed.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_cksumtype
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/./crypto_int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5_c_is_coll_proof_cksum
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/coll_proof_cksum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_cksumtype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'coll_proof_cksum.c:35,11'
          Dst:             find_cksumtype
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_default_free_state
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/default_state.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - empty_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'default_state.c:49,14'
          Dst:             empty_data
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    krb5int_des_init_state
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/default_state.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - alloc_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'default_state.c:39,9'
          Dst:             alloc_data
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    k5memdup
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2302,17'
          Dst:             k5alloc
    - functionName:    data_eq
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2223
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2225,41'
          Dst:             memcmp
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_cached_dkey
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/derive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          105
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - k5memdup
        - krb5_k_create_key
        - krb5_k_reference_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'derive.c:55,12'
          Dst:             k5memdup
        - Src:             'derive.c:58,11'
          Dst:             krb5_k_create_key
        - Src:             'derive.c:70,5'
          Dst:             krb5_k_reference_key
    - functionName:    find_cached_dkey
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/derive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - data_eq
        - krb5_k_reference_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'derive.c:34,13'
          Dst:             data_eq
        - Src:             'derive.c:35,13'
          Dst:             krb5_k_reference_key
    - functionName:    krb5int_derive_key
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/derive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - add_cached_dkey
        - find_cached_dkey
        - krb5int_derive_keyblock
        - zapfree
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'derive.c:147,12'
          Dst:             find_cached_dkey
        - Src:             'derive.c:159,11'
          Dst:             krb5int_derive_keyblock
        - Src:             'derive.c:165,11'
          Dst:             add_cached_dkey
        - Src:             'derive.c:172,5'
          Dst:             zapfree
    - functionName:    krb5int_derive_keyblock
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/derive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - alloc_data
        - empty_data
        - krb5_c_random_to_key
        - krb5int_derive_random
        - zapfree
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'derive.c:114,24'
          Dst:             empty_data
        - Src:             'derive.c:117,11'
          Dst:             alloc_data
        - Src:             'derive.c:122,11'
          Dst:             krb5int_derive_random
        - Src:             'derive.c:127,11'
          Dst:             krb5_c_random_to_key
        - Src:             'derive.c:130,5'
          Dst:             zapfree
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    krb5int_derive_random
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/derive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - empty_data
        - k5_derive_random_rfc3961
        - k5_sp800_108_counter_hmac
        - k5_sp800_108_feedback_cmac
      functionUses:    3
      BranchProfiles:
        - Branch String:   'derive.c:88,5'
          Branch Sides:    []
      Callsites:
        - Src:             'derive.c:86,23'
          Dst:             empty_data
        - Src:             'derive.c:90,16'
          Dst:             k5_derive_random_rfc3961
        - Src:             'derive.c:92,16'
          Dst:             k5_sp800_108_feedback_cmac
        - Src:             'derive.c:94,16'
          Dst:             k5_sp800_108_counter_hmac
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    krb5int_dk_cmac_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          197
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_data
        - derive_keys
        - empty_data
        - k5_bcmp
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - krb5int_cmac_checksum
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_dk_cmac.c:144,23'
          Dst:             empty_data
        - Src:             'enc_dk_cmac.c:150,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_cmac.c:153,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_cmac.c:158,11'
          Dst:             derive_keys
        - Src:             'enc_dk_cmac.c:168,11'
          Dst:             alloc_data
        - Src:             'enc_dk_cmac.c:171,11'
          Dst:             krb5int_cmac_checksum
        - Src:             'enc_dk_cmac.c:174,9'
          Dst:             k5_bcmp
        - Src:             'enc_dk_cmac.c:178,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_dk_cmac.c:179,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_dk_cmac.c:180,5'
          Dst:             zapfree
    - functionName:    derive_keys
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          88
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - krb5_k_free_key
        - krb5int_derive_key
        - make_data
        - store_32_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_dk_cmac.c:59,26'
          Dst:             make_data
        - Src:             'enc_dk_cmac.c:65,5'
          Dst:             store_32_be
        - Src:             'enc_dk_cmac.c:67,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_cmac.c:74,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_cmac.c:77,9'
          Dst:             krb5_k_free_key
    - functionName:    krb5int_dk_cmac_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          192
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - derive_keys
        - krb5_c_random_make_octets
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - krb5int_cmac_checksum
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_dk_cmac.c:99,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_cmac.c:102,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_cmac.c:105,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_cmac.c:110,11'
          Dst:             derive_keys
        - Src:             'enc_dk_cmac.c:116,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'enc_dk_cmac.c:121,11'
          Dst:             krb5int_cmac_checksum
        - Src:             'enc_dk_cmac.c:131,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_dk_cmac.c:132,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5int_camellia_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_dk_cmac.c:38,5'
          Branch Sides:    []
      Callsites:
        - Src:             'enc_dk_cmac.c:47,9'
          Dst:             __assert_fail
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    krb5int_dk_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          319
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - k5_bcmp
        - k5alloc
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - krb5int_derive_key
        - krb5int_hmac
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_dk_hmac.c:214,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_hmac.c:218,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_hmac.c:222,13'
          Dst:             k5alloc
        - Src:             'enc_dk_hmac.c:231,5'
          Dst:             store_32_be
        - Src:             'enc_dk_hmac.c:235,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_hmac.c:241,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_hmac.c:254,11'
          Dst:             krb5int_hmac
        - Src:             'enc_dk_hmac.c:259,9'
          Dst:             k5_bcmp
        - Src:             'enc_dk_hmac.c:265,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_dk_hmac.c:266,5'
          Dst:             krb5_k_free_key
    - functionName:    k5alloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2295,12'
          Dst:             k5calloc
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    krb5int_dk_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          407
      EdgeCount:       72
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - k5alloc
        - krb5_c_random_make_octets
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - krb5int_derive_key
        - krb5int_hmac
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_dk_hmac.c:98,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_hmac.c:102,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_hmac.c:112,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_dk_hmac.c:121,13'
          Dst:             k5alloc
        - Src:             'enc_dk_hmac.c:130,5'
          Dst:             store_32_be
        - Src:             'enc_dk_hmac.c:134,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_hmac.c:140,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_dk_hmac.c:148,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'enc_dk_hmac.c:156,11'
          Dst:             krb5int_hmac
        - Src:             'enc_dk_hmac.c:166,5'
          Dst:             __assert_fail
        - Src:             'enc_dk_hmac.c:172,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_dk_hmac.c:173,5'
          Dst:             krb5_k_free_key
    - functionName:    krb5int_aes_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_dk_hmac.c:54,5'
          Branch Sides:    []
      Callsites:
        - Src:             'enc_dk_hmac.c:63,9'
          Dst:             __assert_fail
    - functionName:    krb5int_dk_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_dk_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_dk_hmac.c:37,5'
          Branch Sides:    []
      Callsites:
        - Src:             'enc_dk_hmac.c:45,9'
          Dst:             __assert_fail
    - functionName:    k5calloc
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2286,11'
          Dst:             calloc
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    make_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_etm_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          201
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - derive_keys
        - empty_data
        - hmac_ivec_data
        - k5_bcmp
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_etm.c:216,23'
          Dst:             empty_data
        - Src:             'enc_etm.c:219,20'
          Dst:             empty_data
        - Src:             'enc_etm.c:225,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_etm.c:228,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_etm.c:233,11'
          Dst:             derive_keys
        - Src:             'enc_etm.c:238,11'
          Dst:             hmac_ivec_data
        - Src:             'enc_etm.c:243,5'
          Dst:             __assert_fail
        - Src:             'enc_etm.c:244,9'
          Dst:             k5_bcmp
        - Src:             'enc_etm.c:253,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_etm.c:254,5'
          Dst:             zapfree
        - Src:             'enc_etm.c:255,5'
          Dst:             zapfree
    - functionName:    empty_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - make_data
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2249,12'
          Dst:             make_data
    - functionName:    derive_keys
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          137
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - alloc_data
        - empty_data
        - krb5_k_free_key
        - krb5int_derive_key
        - krb5int_derive_random
        - make_data
        - store_32_be
        - zapfree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_etm.c:60,28'
          Dst:             make_data
        - Src:             'enc_etm.c:60,54'
          Dst:             empty_data
        - Src:             'enc_etm.c:64,15'
          Dst:             empty_data
        - Src:             'enc_etm.c:67,5'
          Dst:             store_32_be
        - Src:             'enc_etm.c:69,11'
          Dst:             krb5int_derive_key
        - Src:             'enc_etm.c:76,11'
          Dst:             alloc_data
        - Src:             'enc_etm.c:79,11'
          Dst:             krb5int_derive_random
        - Src:             'enc_etm.c:87,10'
          Dst:             empty_data
        - Src:             'enc_etm.c:90,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_etm.c:91,5'
          Dst:             zapfree
    - functionName:    hmac_ivec_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          154
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - alloc_data
        - empty_data
        - k5calloc
        - krb5int_hmac_keyblock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_etm.c:103,26'
          Dst:             empty_data
        - Src:             'enc_etm.c:115,12'
          Dst:             k5calloc
        - Src:             'enc_etm.c:122,11'
          Dst:             alloc_data
        - Src:             'enc_etm.c:127,11'
          Dst:             krb5int_hmac_keyblock
    - functionName:    zapfree
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:667,9'
          Dst:             explicit_bzero
    - functionName:    alloc_data
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/../../../include/k5-int.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../include/k5-int.h:2262,26'
          Dst:             calloc
    - functionName:    krb5int_etm_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          319
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - __assert_fail
        - alloc_data
        - derive_keys
        - empty_data
        - hmac_ivec_data
        - krb5_c_random_make_octets
        - krb5_k_free_key
        - krb5int_c_locate_iov
        - zapfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_etm.c:143,24'
          Dst:             empty_data
        - Src:             'enc_etm.c:143,46'
          Dst:             empty_data
        - Src:             'enc_etm.c:146,20'
          Dst:             empty_data
        - Src:             'enc_etm.c:154,14'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_etm.c:157,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_etm.c:160,15'
          Dst:             krb5int_c_locate_iov
        - Src:             'enc_etm.c:165,15'
          Dst:             alloc_data
        - Src:             'enc_etm.c:172,11'
          Dst:             derive_keys
        - Src:             'enc_etm.c:178,11'
          Dst:             krb5_c_random_make_octets
        - Src:             'enc_etm.c:188,11'
          Dst:             hmac_ivec_data
        - Src:             'enc_etm.c:193,5'
          Dst:             __assert_fail
        - Src:             'enc_etm.c:202,5'
          Dst:             krb5_k_free_key
        - Src:             'enc_etm.c:203,5'
          Dst:             zapfree
        - Src:             'enc_etm.c:205,5'
          Dst:             zapfree
    - functionName:    krb5int_aes2_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_etm.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_etm.c:39,5'
          Branch Sides:    []
      Callsites:
        - Src:             'enc_etm.c:48,9'
          Dst:             __assert_fail
    - functionName:    krb5int_raw_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_raw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          155
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_raw_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_raw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          184
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - krb5int_c_locate_iov
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'enc_raw.c:66,15'
          Dst:             krb5int_c_locate_iov
    - functionName:    krb5int_raw_crypto_length
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/enc_raw.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       6
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'enc_raw.c:34,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    krb5int_nfold
      functionSourceFile: '/src/krb5/src/lib/crypto/krb/nfold.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          199
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_des3_cbc_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/d3_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          1134
      EdgeCount:       60
      CyclomaticComplexity: 8
      functionsReached:
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
        - load_32_be
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'd3_aead.c:104,16'
          Dst:             load_32_be
        - Src:             'd3_aead.c:105,16'
          Dst:             load_32_be
        - Src:             'd3_aead.c:107,5'
          Dst:             k5_iov_cursor_init
        - Src:             'd3_aead.c:108,12'
          Dst:             k5_iov_cursor_get
        - Src:             'd3_aead.c:110,26'
          Dst:             load_32_be
        - Src:             'd3_aead.c:111,27'
          Dst:             load_32_be
        - Src:             'd3_aead.c:121,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:122,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:128,9'
          Dst:             k5_iov_cursor_put
        - Src:             'd3_aead.c:132,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:133,9'
          Dst:             store_32_be
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    krb5int_des3_cbc_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/d3_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          1120
      EdgeCount:       60
      CyclomaticComplexity: 8
      functionsReached:
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
        - load_32_be
        - store_32_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'd3_aead.c:51,12'
          Dst:             load_32_be
        - Src:             'd3_aead.c:52,13'
          Dst:             load_32_be
        - Src:             'd3_aead.c:54,5'
          Dst:             k5_iov_cursor_init
        - Src:             'd3_aead.c:55,12'
          Dst:             k5_iov_cursor_get
        - Src:             'd3_aead.c:57,17'
          Dst:             load_32_be
        - Src:             'd3_aead.c:58,18'
          Dst:             load_32_be
        - Src:             'd3_aead.c:64,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:65,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:67,9'
          Dst:             k5_iov_cursor_put
        - Src:             'd3_aead.c:71,9'
          Dst:             store_32_be
        - Src:             'd3_aead.c:72,9'
          Dst:             store_32_be
    - functionName:    mit_des3_key_sched
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/d3_kysched.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - mit_des_check_key_parity
        - mit_des_is_weak_key
        - mit_des_make_key_sched
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'd3_kysched.c:32,5'
          Dst:             mit_des_make_key_sched
        - Src:             'd3_kysched.c:33,5'
          Dst:             mit_des_make_key_sched
        - Src:             'd3_kysched.c:34,5'
          Dst:             mit_des_make_key_sched
        - Src:             'd3_kysched.c:36,10'
          Dst:             mit_des_check_key_parity
        - Src:             'd3_kysched.c:38,9'
          Dst:             mit_des_is_weak_key
        - Src:             'd3_kysched.c:41,10'
          Dst:             mit_des_check_key_parity
        - Src:             'd3_kysched.c:43,9'
          Dst:             mit_des_is_weak_key
        - Src:             'd3_kysched.c:46,10'
          Dst:             mit_des_check_key_parity
        - Src:             'd3_kysched.c:48,9'
          Dst:             mit_des_is_weak_key
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_des_cbc_mac
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          421
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached:
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - load_32_be
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'f_aead.c:143,12'
          Dst:             load_32_be
        - Src:             'f_aead.c:144,13'
          Dst:             load_32_be
        - Src:             'f_aead.c:146,5'
          Dst:             k5_iov_cursor_init
        - Src:             'f_aead.c:147,12'
          Dst:             k5_iov_cursor_get
        - Src:             'f_aead.c:149,17'
          Dst:             load_32_be
        - Src:             'f_aead.c:150,18'
          Dst:             load_32_be
        - Src:             'f_aead.c:157,5'
          Dst:             store_32_be
        - Src:             'f_aead.c:158,5'
          Dst:             store_32_be
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    store_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:555,5'
          Dst:             __bswap_32
    - functionName:    krb5int_des_cbc_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          450
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
        - load_32_be
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'f_aead.c:96,16'
          Dst:             load_32_be
        - Src:             'f_aead.c:97,16'
          Dst:             load_32_be
        - Src:             'f_aead.c:99,5'
          Dst:             k5_iov_cursor_init
        - Src:             'f_aead.c:100,12'
          Dst:             k5_iov_cursor_get
        - Src:             'f_aead.c:102,26'
          Dst:             load_32_be
        - Src:             'f_aead.c:103,27'
          Dst:             load_32_be
        - Src:             'f_aead.c:111,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:112,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:118,9'
          Dst:             k5_iov_cursor_put
        - Src:             'f_aead.c:122,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:123,9'
          Dst:             store_32_be
    - functionName:    krb5int_des_cbc_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          436
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - k5_iov_cursor_get
        - k5_iov_cursor_init
        - k5_iov_cursor_put
        - load_32_be
        - store_32_be
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'f_aead.c:49,12'
          Dst:             load_32_be
        - Src:             'f_aead.c:50,13'
          Dst:             load_32_be
        - Src:             'f_aead.c:52,5'
          Dst:             k5_iov_cursor_init
        - Src:             'f_aead.c:53,12'
          Dst:             k5_iov_cursor_get
        - Src:             'f_aead.c:55,17'
          Dst:             load_32_be
        - Src:             'f_aead.c:56,18'
          Dst:             load_32_be
        - Src:             'f_aead.c:60,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:61,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:63,9'
          Dst:             k5_iov_cursor_put
        - Src:             'f_aead.c:67,9'
          Dst:             store_32_be
        - Src:             'f_aead.c:68,9'
          Dst:             store_32_be
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    mit_des_make_key_sched
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/f_sched.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          322
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - load_32_be
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'f_sched.c:266,15'
          Dst:             load_32_be
        - Src:             'f_sched.c:277,15'
          Dst:             load_32_be
    - functionName:    mit_des_is_weak_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/des/weak_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'weak_key.c:83,14'
          Dst:             memcmp
    - functionName:    k5_aes_decrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aescrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          2501
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'aescrypt.c:248,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    k5_aes_encrypt
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aescrypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          2494
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'aescrypt.c:115,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    k5_aes_init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aestab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_aes_decrypt_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          67
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached:
        - aes_decrypt_key192
        - k5_aes_decrypt_key128
        - k5_aes_decrypt_key256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'aeskey.c:563,2'
          Branch Sides:    []
      Callsites:
        - Src:             'aeskey.c:565,28'
          Dst:             k5_aes_decrypt_key128
        - Src:             'aeskey.c:566,28'
          Dst:             aes_decrypt_key192
        - Src:             'aeskey.c:567,28'
          Dst:             k5_aes_decrypt_key256
    - functionName:    k5_aes_decrypt_key128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          1446
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aes_decrypt_key192
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          1690
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_aes_decrypt_key256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          2261
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_aes_encrypt_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          67
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached:
        - aes_encrypt_key192
        - k5_aes_encrypt_key128
        - k5_aes_encrypt_key256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'aeskey.c:552,2'
          Branch Sides:    []
      Callsites:
        - Src:             'aeskey.c:554,28'
          Dst:             k5_aes_encrypt_key128
        - Src:             'aeskey.c:555,28'
          Dst:             aes_encrypt_key192
        - Src:             'aeskey.c:556,28'
          Dst:             k5_aes_encrypt_key256
    - functionName:    k5_aes_encrypt_key128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          862
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aes_encrypt_key192
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          924
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_aes_encrypt_key256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/aes/aeskey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          1191
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_dec_blk
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1541
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_Camellia_DecryptBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:1540,5'
          Dst:             k5_Camellia_DecryptBlock
    - functionName:    k5_Camellia_DecryptBlock
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1454
      functionLinenumberEnd: 1478
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          275
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - k5_camellia_decrypt128
        - k5_camellia_decrypt256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'camellia.c:1462,5'
          Branch Sides:    []
      Callsites:
        - Src:             'camellia.c:1464,2'
          Dst:             k5_camellia_decrypt128
        - Src:             'camellia.c:1469,2'
          Dst:             k5_camellia_decrypt256
    - functionName:    k5_camellia_decrypt128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          2203
      EdgeCount:       81
      CyclomaticComplexity: 42
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_camellia_decrypt256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1388
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         55
      ICount:          2937
      EdgeCount:       109
      CyclomaticComplexity: 56
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_dec_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1535
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - k5_camellia_setup128
        - k5_camellia_setup192
        - k5_camellia_setup256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'camellia.c:1518,5'
          Branch Sides:    []
      Callsites:
        - Src:             'camellia.c:1520,2'
          Dst:             k5_camellia_setup128
        - Src:             'camellia.c:1524,2'
          Dst:             k5_camellia_setup192
        - Src:             'camellia.c:1528,2'
          Dst:             k5_camellia_setup256
    - functionName:    k5_camellia_setup128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          2220
      EdgeCount:       65
      CyclomaticComplexity: 34
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_camellia_setup192
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_camellia_setup256
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:966,5'
          Dst:             k5_camellia_setup256
    - functionName:    k5_camellia_setup256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          3122
      EdgeCount:       85
      CyclomaticComplexity: 44
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_enc_blk
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1510
      functionLinenumberEnd: 1512
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_Camellia_EncryptBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'camellia.c:1511,5'
          Dst:             k5_Camellia_EncryptBlock
    - functionName:    k5_Camellia_EncryptBlock
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1422
      functionLinenumberEnd: 1447
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          275
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - k5_camellia_encrypt128
        - k5_camellia_encrypt256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'camellia.c:1430,5'
          Branch Sides:    []
      Callsites:
        - Src:             'camellia.c:1432,2'
          Dst:             k5_camellia_encrypt128
        - Src:             'camellia.c:1437,2'
          Dst:             k5_camellia_encrypt256
    - functionName:    k5_camellia_encrypt128
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          2203
      EdgeCount:       81
      CyclomaticComplexity: 42
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_camellia_encrypt256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         55
      ICount:          2937
      EdgeCount:       109
      CyclomaticComplexity: 56
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_camellia_enc_key
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1488
      functionLinenumberEnd: 1506
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - k5_camellia_setup128
        - k5_camellia_setup192
        - k5_camellia_setup256
      functionUses:    1
      BranchProfiles:
        - Branch String:   'camellia.c:1489,5'
          Branch Sides:    []
      Callsites:
        - Src:             'camellia.c:1491,2'
          Dst:             k5_camellia_setup128
        - Src:             'camellia.c:1495,2'
          Dst:             k5_camellia_setup192
        - Src:             'camellia.c:1499,2'
          Dst:             k5_camellia_setup256
    - functionName:    krb5int_camellia_blk_len
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1484
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_Camellia_Ekeygen
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/camellia/camellia.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - k5_camellia_setup128
        - k5_camellia_setup192
        - k5_camellia_setup256
      functionUses:    0
      BranchProfiles:
        - Branch String:   'camellia.c:1401,5'
          Branch Sides:    []
      Callsites:
        - Src:             'camellia.c:1403,2'
          Dst:             k5_camellia_setup128
        - Src:             'camellia.c:1406,2'
          Dst:             k5_camellia_setup192
        - Src:             'camellia.c:1409,2'
          Dst:             k5_camellia_setup256
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_MD4Final
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          126
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - Transform
        - krb5int_MD4Update
        - load_32_le
        - store_32_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:138,5'
          Dst:             krb5int_MD4Update
        - Src:             'md4.c:142,17'
          Dst:             load_32_le
        - Src:             'md4.c:143,5'
          Dst:             Transform
        - Src:             'md4.c:148,9'
          Dst:             store_32_le
    - functionName:    krb5int_MD4Update
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          142
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - Transform
        - load_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:113,25'
          Dst:             load_32_le
        - Src:             'md4.c:115,13'
          Dst:             Transform
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Transform
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          1380
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_MD4Init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md4/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    store_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_MD5Final
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          126
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - Transform
        - krb5int_MD5Update
        - load_32_le
        - store_32_le
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:177,5'
          Dst:             krb5int_MD5Update
        - Src:             'md5.c:181,17'
          Dst:             load_32_le
        - Src:             'md5.c:182,5'
          Dst:             Transform
        - Src:             'md5.c:186,9'
          Dst:             store_32_le
    - functionName:    krb5int_MD5Update
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          142
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - Transform
        - load_32_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:150,25'
          Dst:             load_32_le
        - Src:             'md5.c:151,13'
          Dst:             Transform
    - functionName:    load_32_le
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Transform
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          2084
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_MD5Init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/md5/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_32
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shsFinal
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha1/shs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          163
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - SHSTransform
      functionUses:    1
      BranchProfiles:
        - Branch String:   'shs.c:349,5'
          Branch Sides:    []
      Callsites:
        - Src:             'shs.c:372,9'
          Dst:             SHSTransform
        - Src:             'shs.c:383,5'
          Dst:             SHSTransform
    - functionName:    SHSTransform
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha1/shs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          4516
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_32_be
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha1/../../../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../include/k5-platform.h:601,12'
          Dst:             __bswap_32
    - functionName:    shsUpdate
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha1/shs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          394
      EdgeCount:       65
      CyclomaticComplexity: 12
      functionsReached:
        - SHSTransform
        - load_32_be
      functionUses:    1
      BranchProfiles:
        - Branch String:   'shs.c:282,17'
          Branch Sides:    []
        - Branch String:   'shs.c:321,9'
          Branch Sides:    []
      Callsites:
        - Src:             'shs.c:293,21'
          Dst:             load_32_be
        - Src:             'shs.c:298,13'
          Dst:             SHSTransform
        - Src:             'shs.c:306,21'
          Dst:             load_32_be
        - Src:             'shs.c:309,9'
          Dst:             SHSTransform
        - Src:             'shs.c:316,21'
          Dst:             load_32_be
    - functionName:    shsInit
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha1/shs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          32
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cshift
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sha256
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_sha256_final
        - k5_sha256_init
        - k5_sha256_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256.c:266,5'
          Dst:             k5_sha256_init
        - Src:             'sha256.c:268,9'
          Dst:             k5_sha256_update
        - Src:             'sha256.c:269,5'
          Dst:             k5_sha256_final
    - functionName:    k5_sha256_init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          46
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sha256_update
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          179
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - calc
        - swap_uint32_t
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256.c:217,20'
          Dst:             swap_uint32_t
        - Src:             'sha256.c:218,20'
          Dst:             swap_uint32_t
        - Src:             'sha256.c:220,6'
          Dst:             calc
    - functionName:    k5_sha256_final
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          221
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_sha256_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256.c:246,5'
          Dst:             k5_sha256_update
    - functionName:    swap_uint32_t
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cshift
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha256.c:180,15'
          Dst:             cshift
    - functionName:    calc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha256.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          344
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cshift64
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sha384_final
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_sha512_final
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512.c:304,5'
          Dst:             k5_sha512_final
    - functionName:    k5_sha512_final
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          382
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_sha512_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512.c:261,5'
          Dst:             k5_sha512_update
    - functionName:    k5_sha512_update
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          173
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - calc
        - swap_uint64_t
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512.c:223,20'
          Dst:             swap_uint64_t
        - Src:             'sha512.c:224,20'
          Dst:             swap_uint64_t
        - Src:             'sha512.c:226,6'
          Dst:             calc
    - functionName:    swap_uint64_t
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cshift64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512.c:187,14'
          Dst:             cshift64
    - functionName:    calc
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          344
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sha384_update
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_sha512_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha512.c:297,5'
          Dst:             k5_sha512_update
    - functionName:    k5_sha384_init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          46
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_sha512_init
      functionSourceFile: '/src/krb5/src/lib/crypto/builtin/sha2/sha512.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          46
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/util/et/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    com_err_initialize
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - k5_mutex_finish_init
        - krb5int_key_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:41,11'
          Dst:             k5_mutex_finish_init
        - Src:             'error_message.c:44,11'
          Dst:             k5_mutex_finish_init
        - Src:             'error_message.c:47,11'
          Dst:             krb5int_key_register
    - functionName:    com_err_initialize__aux
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - com_err_initialize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:31,1'
          Dst:             com_err_initialize
    - functionName:    com_err_finish_init
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - k5_once
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:308,12'
          Dst:             k5_once
        - Src:             'error_message.c:308,12'
          Dst:             __assert_fail
    - functionName:    remove_error_table
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_once
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:288,9'
          Dst:             k5_once
        - Src:             'error_message.c:288,9'
          Dst:             __assert_fail
        - Src:             'error_message.c:290,5'
          Dst:             k5_mutex_lock
        - Src:             'error_message.c:298,13'
          Dst:             k5_mutex_unlock
        - Src:             'error_message.c:302,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/et/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/et/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    add_error_table
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          145
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - bindtextdomain
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_once
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:257,9'
          Dst:             k5_once
        - Src:             'error_message.c:257,9'
          Dst:             __assert_fail
        - Src:             'error_message.c:266,5'
          Dst:             k5_mutex_lock
        - Src:             'error_message.c:273,9'
          Dst:             bindtextdomain
        - Src:             'error_message.c:275,5'
          Dst:             k5_mutex_unlock
    - functionName:    get_thread_buffer
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - krb5int_getspecific
        - krb5int_setspecific
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:88,10'
          Dst:             krb5int_getspecific
        - Src:             'error_message.c:94,13'
          Dst:             krb5int_setspecific
    - functionName:    error_message
      functionSourceFile: '/src/krb5/src/util/et/error_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         55
      ICount:          359
      EdgeCount:       72
      CyclomaticComplexity: 19
      functionsReached:
        - __assert_fail
        - abort
        - dgettext
        - error_table_name_r
        - get_thread_buffer
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_once
        - k5_strerror_r
        - krb5int_strlcpy
        - strerror
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'error_message.c:114,9'
          Dst:             k5_once
        - Src:             'error_message.c:114,9'
          Dst:             __assert_fail
        - Src:             'error_message.c:134,13'
          Dst:             abort
        - Src:             'error_message.c:135,14'
          Dst:             get_thread_buffer
        - Src:             'error_message.c:136,19'
          Dst:             k5_strerror_r
        - Src:             'error_message.c:138,16'
          Dst:             strerror
        - Src:             'error_message.c:141,5'
          Dst:             k5_mutex_lock
        - Src:             'error_message.c:154,5'
          Dst:             k5_mutex_unlock
        - Src:             'error_message.c:167,16'
          Dst:             dgettext
        - Src:             'error_message.c:172,5'
          Dst:             k5_mutex_unlock
        - Src:             'error_message.c:227,10'
          Dst:             get_thread_buffer
        - Src:             'error_message.c:231,5'
          Dst:             krb5int_strlcpy
        - Src:             'error_message.c:234,16'
          Dst:             error_table_name_r
    - functionName:    error_table_name
      functionSourceFile: '/src/krb5/src/util/et/et_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - error_table_name_r
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'et_name.c:56,12'
          Dst:             error_table_name_r
    - functionName:    error_table_name_r
      functionSourceFile: '/src/krb5/src/util/et/et_name.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset_com_err_hook
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - com_err_finish_init
        - com_err_lock_hook_handle
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:169,9'
          Dst:             com_err_finish_init
        - Src:             'com_err.c:170,9'
          Dst:             abort
        - Src:             'com_err.c:171,5'
          Dst:             com_err_lock_hook_handle
        - Src:             'com_err.c:174,5'
          Dst:             k5_mutex_unlock
    - functionName:    com_err_lock_hook_handle
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:147,5'
          Dst:             k5_mutex_lock
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/et/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/et/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    set_com_err_hook
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - com_err_finish_init
        - com_err_lock_hook_handle
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:155,9'
          Dst:             com_err_finish_init
        - Src:             'com_err.c:156,9'
          Dst:             abort
        - Src:             'com_err.c:157,5'
          Dst:             com_err_lock_hook_handle
        - Src:             'com_err.c:160,5'
          Dst:             k5_mutex_unlock
    - functionName:    com_err
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - com_err_va
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:138,5'
          Dst:             com_err_va
    - functionName:    com_err_va
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - abort
        - com_err_finish_init
        - default_com_err_proc
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:106,11'
          Dst:             com_err_finish_init
        - Src:             'com_err.c:109,5'
          Dst:             k5_mutex_lock
        - Src:             'com_err.c:112,5'
          Dst:             k5_mutex_unlock
        - Src:             'com_err.c:123,9'
          Dst:             default_com_err_proc
        - Src:             'com_err.c:126,5'
          Dst:             __assert_fail
        - Src:             'com_err.c:127,5'
          Dst:             abort
    - functionName:    default_com_err_proc
      functionSourceFile: '/src/krb5/src/util/et/com_err.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - error_message
        - fflush
        - fputs
        - putc
        - vfprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'com_err.c:80,9'
          Dst:             fputs
        - Src:             'com_err.c:81,9'
          Dst:             fputs
        - Src:             'com_err.c:84,15'
          Dst:             error_message
        - Src:             'com_err.c:84,9'
          Dst:             fputs
        - Src:             'com_err.c:85,9'
          Dst:             fputs
        - Src:             'com_err.c:88,9'
          Dst:             vfprintf
        - Src:             'com_err.c:91,5'
          Dst:             putc
        - Src:             'com_err.c:92,5'
          Dst:             putc
        - Src:             'com_err.c:93,5'
          Dst:             fflush
    - functionName:    vfprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    putc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_termination
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          126
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:196,5'
          Dst:             k5_mutex_lock
        - Src:             'threads.c:222,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_os_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_pthread_loaded
        - pthread_mutex_unlock
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:550,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:551,16'
          Dst:             pthread_mutex_unlock
    - functionName:    krb5int_pthread_loaded
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         37
      ICount:          131
      EdgeCount:       53
      CyclomaticComplexity: 18
      functionsReached:
        - loaded_test_aux
        - pthread_once
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:161,12'
          Dst:             pthread_once
        - Src:             'threads.c:161,12'
          Dst:             loaded_test_aux
        - Src:             'threads.c:162,12'
          Dst:             pthread_once
        - Src:             'threads.c:162,12'
          Dst:             loaded_test_aux
    - functionName:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_getspecific
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_setspecific
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_key_create
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_key_delete
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_once
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_destroy
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_init
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_self
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_create
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_join
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    loaded_test_aux
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         4
      ICount:          18
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_os_mutex_lock
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_pthread_loaded
        - pthread_mutex_lock
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:541,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:542,16'
          Dst:             pthread_mutex_lock
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_thread_support_init
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          79
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - k5_mutex_finish_init
        - krb5int_err_init
        - krb5int_init_fac
        - krb5int_pthread_loaded
        - pthread_key_create
        - thread_termination
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:424,11'
          Dst:             k5_mutex_finish_init
        - Src:             'threads.c:427,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:428,15'
          Dst:             pthread_key_create
        - Src:             'threads.c:428,15'
          Dst:             thread_termination
        - Src:             'threads.c:435,11'
          Dst:             krb5int_init_fac
        - Src:             'threads.c:439,11'
          Dst:             krb5int_err_init
    - functionName:    krb5int_thread_support_init__aux
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - krb5int_thread_support_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:32,1'
          Dst:             krb5int_thread_support_init
    - functionName:    k5_os_mutex_init
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_pthread_loaded
        - pthread_mutex_init
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:523,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:524,16'
          Dst:             pthread_mutex_init
    - functionName:    krb5int_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:515,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_mutex_lock
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:510,5'
          Dst:             k5_mutex_lock
    - functionName:    k5_os_mutex_destroy
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - krb5int_pthread_loaded
        - pthread_mutex_destroy
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:532,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:533,16'
          Dst:             pthread_mutex_destroy
    - functionName:    krb5int_mutex_free
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:502,12'
          Dst:             k5_os_mutex_destroy
    - functionName:    k5_mutex_init
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:358,12'
          Dst:             k5_os_mutex_init
    - functionName:    krb5int_mutex_alloc
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_mutex_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:490,11'
          Dst:             k5_mutex_init
    - functionName:    krb5int_call_thread_support_init
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - k5_once
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:399,12'
          Dst:             k5_once
        - Src:             'threads.c:399,12'
          Dst:             __assert_fail
    - functionName:    k5_once
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - krb5int_pthread_loaded
        - pthread_once
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:559,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:560,16'
          Dst:             pthread_once
        - Src:             'threads.c:562,16'
          Dst:             __assert_fail
        - Src:             'threads.c:562,16'
          Dst:             __assert_fail
    - functionName:    krb5int_key_delete
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:386,5'
          Dst:             k5_mutex_lock
        - Src:             'threads.c:387,5'
          Dst:             __assert_fail
        - Src:             'threads.c:390,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_key_register
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - k5_mutex_lock
        - k5_mutex_unlock
        - k5_once
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:329,11'
          Dst:             k5_once
        - Src:             'threads.c:329,11'
          Dst:             __assert_fail
        - Src:             'threads.c:350,5'
          Dst:             k5_mutex_lock
        - Src:             'threads.c:351,5'
          Dst:             __assert_fail
        - Src:             'threads.c:354,5'
          Dst:             k5_mutex_unlock
    - functionName:    krb5int_setspecific
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          169
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - k5_once
        - krb5int_pthread_loaded
        - pthread_getspecific
        - pthread_setspecific
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:267,11'
          Dst:             k5_once
        - Src:             'threads.c:267,11'
          Dst:             __assert_fail
        - Src:             'threads.c:271,5'
          Dst:             __assert_fail
        - Src:             'threads.c:298,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:299,13'
          Dst:             pthread_getspecific
        - Src:             'threads.c:309,19'
          Dst:             pthread_setspecific
    - functionName:    krb5int_getspecific
      functionSourceFile: '/src/krb5/src/util/support/threads.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          118
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - k5_once
        - krb5int_pthread_loaded
        - pthread_getspecific
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'threads.c:234,11'
          Dst:             k5_once
        - Src:             'threads.c:234,11'
          Dst:             __assert_fail
        - Src:             'threads.c:238,5'
          Dst:             __assert_fail
        - Src:             'threads.c:250,9'
          Dst:             krb5int_pthread_loaded
        - Src:             'threads.c:251,13'
          Dst:             pthread_getspecific
    - functionName:    krb5int_fini_fac
      functionSourceFile: '/src/krb5/src/util/support/init-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_os_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'init-addrinfo.c:67,5'
          Dst:             k5_os_mutex_destroy
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_init_fac
      functionSourceFile: '/src/krb5/src/util/support/init-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'init-addrinfo.c:62,12'
          Dst:             k5_mutex_finish_init
    - functionName:    krb5int_get_plugin_dir_func
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          184
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - Tprintf
        - calloc
        - krb5int_get_plugin_func
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:557,5'
          Dst:             Tprintf
        - Src:             'plugins.c:560,13'
          Dst:             calloc
        - Src:             'plugins.c:570,17'
          Dst:             krb5int_get_plugin_func
        - Src:             'plugins.c:574,24'
          Dst:             realloc
    - functionName:    Tprintf
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_get_plugin_func
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_sym_dlfcn
      functionUses:    144
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:246,16'
          Dst:             get_sym_dlfcn
    - functionName:    get_sym_dlfcn
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - Tprintf
        - dgettext
        - dlerror
        - dlsym
        - k5_set_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:112,16'
          Dst:             dlsym
        - Src:             'plugins.c:114,13'
          Dst:             dlerror
        - Src:             'plugins.c:116,17'
          Dst:             dgettext
        - Src:             'plugins.c:117,9'
          Dst:             Tprintf
        - Src:             'plugins.c:118,9'
          Dst:             k5_set_error
    - functionName:    dlsym
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dlerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_free_plugin_dir_func
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_get_plugin_dir_data
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          184
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - Tprintf
        - calloc
        - krb5int_get_plugin_data
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:498,5'
          Dst:             Tprintf
        - Src:             'plugins.c:501,13'
          Dst:             calloc
        - Src:             'plugins.c:511,17'
          Dst:             krb5int_get_plugin_data
        - Src:             'plugins.c:515,24'
          Dst:             realloc
    - functionName:    krb5int_get_plugin_data
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_sym_dlfcn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:238,12'
          Dst:             get_sym_dlfcn
    - functionName:    krb5int_free_plugin_dir_data
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_close_plugin_dirs
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_close_plugin
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:471,13'
          Dst:             krb5int_close_plugin
    - functionName:    krb5int_close_plugin
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close_plugin_dlfcn
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:256,5'
          Dst:             close_plugin_dlfcn
    - functionName:    close_plugin_dlfcn
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dlclose
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:129,9'
          Dst:             dlclose
    - functionName:    dlclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_plugin_file_handle_array_free
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - krb5int_close_plugin
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:299,13'
          Dst:             krb5int_close_plugin
    - functionName:    krb5int_free_plugin_filenames
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_plugin_file_handle_array_add
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:279,17'
          Dst:             realloc
    - functionName:    krb5int_get_plugin_filenames
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          242
      EdgeCount:       59
      CyclomaticComplexity: 15
      functionsReached:
        - asprintf
        - calloc
        - krb5int_free_plugin_filenames
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:344,21'
          Dst:             calloc
        - Src:             'plugins.c:352,21'
          Dst:             asprintf
        - Src:             'plugins.c:367,5'
          Dst:             krb5int_free_plugin_filenames
    - functionName:    krb5int_plugin_file_handle_array_init
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:265,15'
          Dst:             calloc
    - functionName:    krb5int_open_plugin_dirs
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          394
      EdgeCount:       102
      CyclomaticComplexity: 27
      functionsReached:
        - k5_dir_filenames
        - k5_free_filenames
        - k5_path_join
        - krb5int_close_plugin
        - krb5int_free_plugin_filenames
        - krb5int_get_plugin_filenames
        - krb5int_open_plugin
        - krb5int_plugin_file_handle_array_add
        - krb5int_plugin_file_handle_array_free
        - krb5int_plugin_file_handle_array_init
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:390,15'
          Dst:             krb5int_plugin_file_handle_array_init
        - Src:             'plugins.c:394,15'
          Dst:             krb5int_get_plugin_filenames
        - Src:             'plugins.c:407,27'
          Dst:             k5_path_join
        - Src:             'plugins.c:409,29'
          Dst:             krb5int_open_plugin
        - Src:             'plugins.c:410,27'
          Dst:             krb5int_plugin_file_handle_array_add
        - Src:             'plugins.c:416,41'
          Dst:             krb5int_close_plugin
        - Src:             'plugins.c:422,19'
          Dst:             k5_dir_filenames
        - Src:             'plugins.c:427,21'
          Dst:             strcmp
        - Src:             'plugins.c:428,21'
          Dst:             strcmp
        - Src:             'plugins.c:431,23'
          Dst:             k5_path_join
        - Src:             'plugins.c:433,29'
          Dst:             krb5int_open_plugin
        - Src:             'plugins.c:434,27'
          Dst:             krb5int_plugin_file_handle_array_add
        - Src:             'plugins.c:442,21'
          Dst:             krb5int_close_plugin
        - Src:             'plugins.c:445,13'
          Dst:             k5_free_filenames
        - Src:             'plugins.c:458,30'
          Dst:             krb5int_free_plugin_filenames
        - Src:             'plugins.c:459,30'
          Dst:             krb5int_plugin_file_handle_array_free
    - functionName:    krb5int_open_plugin
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - open_plugin_dlfcn
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:220,9'
          Dst:             calloc
        - Src:             'plugins.c:224,11'
          Dst:             open_plugin_dlfcn
    - functionName:    open_plugin_dlfcn
      functionSourceFile: '/src/krb5/src/util/support/plugins.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Tprintf
        - dgettext
        - dlerror
        - dlopen
        - k5_set_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins.c:90,19'
          Dst:             dlopen
        - Src:             'plugins.c:92,13'
          Dst:             dlerror
        - Src:             'plugins.c:94,17'
          Dst:             dgettext
        - Src:             'plugins.c:95,9'
          Dst:             Tprintf
        - Src:             'plugins.c:96,34'
          Dst:             dgettext
        - Src:             'plugins.c:96,9'
          Dst:             k5_set_error
    - functionName:    dlopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_set_error_info_callout_fn
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5int_call_thread_support_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:118,5'
          Dst:             krb5int_call_thread_support_init
        - Src:             'errors.c:119,5'
          Dst:             k5_mutex_lock
        - Src:             'errors.c:121,5'
          Dst:             k5_mutex_unlock
    - functionName:    k5_mutex_lock
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_lock
        - strerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:369,13'
          Dst:             k5_os_mutex_lock
        - Src:             '../../include/k5-thread.h:373,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:372,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:376,5'
          Dst:             __assert_fail
    - functionName:    k5_mutex_unlock
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - fprintf
        - k5_os_mutex_unlock
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-thread.h:381,13'
          Dst:             k5_os_mutex_unlock
        - Src:             '../../include/k5-thread.h:385,20'
          Dst:             strerror
        - Src:             '../../include/k5-thread.h:384,9'
          Dst:             fprintf
        - Src:             '../../include/k5-thread.h:388,5'
          Dst:             __assert_fail
    - functionName:    k5_free_error
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    oom_check
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_get_error
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - dgettext
        - k5_mutex_lock
        - k5_mutex_unlock
        - krb5int_call_thread_support_init
        - oom_check
        - snprintf
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:74,26'
          Dst:             strdup
        - Src:             'errors.c:74,16'
          Dst:             oom_check
        - Src:             'errors.c:76,9'
          Dst:             krb5int_call_thread_support_init
        - Src:             'errors.c:77,33'
          Dst:             dgettext
        - Src:             'errors.c:77,26'
          Dst:             strdup
        - Src:             'errors.c:77,16'
          Dst:             oom_check
        - Src:             'errors.c:79,5'
          Dst:             k5_mutex_lock
        - Src:             'errors.c:82,9'
          Dst:             k5_mutex_unlock
        - Src:             'errors.c:83,33'
          Dst:             dgettext
        - Src:             'errors.c:83,26'
          Dst:             strdup
        - Src:             'errors.c:83,16'
          Dst:             oom_check
        - Src:             'errors.c:91,9'
          Dst:             k5_mutex_unlock
        - Src:             'errors.c:92,36'
          Dst:             dgettext
        - Src:             'errors.c:92,9'
          Dst:             snprintf
        - Src:             'errors.c:93,26'
          Dst:             strdup
        - Src:             'errors.c:93,16'
          Dst:             oom_check
        - Src:             'errors.c:96,9'
          Dst:             strdup
        - Src:             'errors.c:97,5'
          Dst:             k5_mutex_unlock
        - Src:             'errors.c:98,12'
          Dst:             oom_check
    - functionName:    k5_clear_error
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_free_error
      functionUses:    153
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:111,5'
          Dst:             k5_free_error
    - functionName:    k5_vset_error
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_clear_error
        - vasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:53,5'
          Dst:             k5_clear_error
        - Src:             'errors.c:56,9'
          Dst:             vasprintf
    - functionName:    k5_set_error
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_vset_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:44,5'
          Dst:             k5_vset_error
    - functionName:    k5_mutex_finish_init
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_err_init
      functionSourceFile: '/src/krb5/src/util/support/errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_mutex_finish_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'errors.c:32,12'
          Dst:             k5_mutex_finish_init
    - functionName:    k5_buf_status
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_buf_truncate
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:255,5'
          Dst:             __assert_fail
    - functionName:    k5_buf_get_space
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - endptr
        - ensure_space
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:244,10'
          Dst:             ensure_space
        - Src:             'k5buf.c:247,12'
          Dst:             endptr
    - functionName:    ensure_space
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          231
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - explicit_bzero
        - realloc
        - set_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:80,5'
          Dst:             __assert_fail
        - Src:             'k5buf.c:93,9'
          Dst:             explicit_bzero
        - Src:             'k5buf.c:96,20'
          Dst:             realloc
        - Src:             'k5buf.c:106,9'
          Dst:             explicit_bzero
        - Src:             'k5buf.c:109,5'
          Dst:             set_error
    - functionName:    endptr
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_error
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_buf_cstring
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - endptr
        - ensure_space
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:235,10'
          Dst:             ensure_space
        - Src:             'k5buf.c:237,6'
          Dst:             endptr
    - functionName:    k5_buf_add_fmt
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_vfmt
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:228,5'
          Dst:             k5_buf_add_vfmt
    - functionName:    k5_buf_add_vfmt
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          249
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
        - endptr
        - ensure_space
        - explicit_bzero
        - k5_buf_free
        - set_error
        - strlen
        - vasprintf
        - vsnprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:174,23'
          Dst:             endptr
        - Src:             'k5buf.c:174,13'
          Dst:             vsnprintf
        - Src:             'k5buf.c:176,13'
          Dst:             set_error
        - Src:             'k5buf.c:183,5'
          Dst:             __assert_fail
        - Src:             'k5buf.c:185,19'
          Dst:             endptr
        - Src:             'k5buf.c:185,9'
          Dst:             vsnprintf
        - Src:             'k5buf.c:194,14'
          Dst:             ensure_space
        - Src:             'k5buf.c:197,23'
          Dst:             endptr
        - Src:             'k5buf.c:197,13'
          Dst:             vsnprintf
        - Src:             'k5buf.c:199,13'
          Dst:             k5_buf_free
        - Src:             'k5buf.c:207,9'
          Dst:             vasprintf
        - Src:             'k5buf.c:209,9'
          Dst:             k5_buf_free
        - Src:             'k5buf.c:212,9'
          Dst:             ensure_space
        - Src:             'k5buf.c:214,16'
          Dst:             endptr
        - Src:             'k5buf.c:218,9'
          Dst:             strlen
        - Src:             'k5buf.c:218,9'
          Dst:             explicit_bzero
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_buf_free
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - explicit_bzero
        - set_error
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:270,5'
          Dst:             __assert_fail
        - Src:             'k5buf.c:272,9'
          Dst:             explicit_bzero
        - Src:             'k5buf.c:274,5'
          Dst:             set_error
    - functionName:    k5_buf_add_len
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - endptr
        - ensure_space
      functionUses:    58
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:153,10'
          Dst:             ensure_space
        - Src:             'k5buf.c:156,16'
          Dst:             endptr
    - functionName:    k5_buf_add
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_buf_add_len
        - strlen
      functionUses:    57
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:147,31'
          Dst:             strlen
        - Src:             'k5buf.c:147,5'
          Dst:             k5_buf_add_len
    - functionName:    k5_buf_init_dynamic_zap
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_init_dynamic
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:139,5'
          Dst:             k5_buf_init_dynamic
    - functionName:    k5_buf_init_dynamic
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - set_error
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:130,9'
          Dst:             set_error
    - functionName:    k5_buf_init_fixed
      functionSourceFile: '/src/krb5/src/util/support/k5buf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'k5buf.c:116,5'
          Dst:             __assert_fail
    - functionName:    krb5int_gmt_mktime
      functionSourceFile: '/src/krb5/src/util/support/gmt_mktime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timegm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmt_mktime.c:45,12'
          Dst:             timegm
    - functionName:    timegm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    system_freeaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - freeaddrinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:331,5'
          Dst:             freeaddrinfo
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    system_getaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getaddrinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:325,12'
          Dst:             getaddrinfo
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_getnameinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1341
      functionLinenumberEnd: 1342
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getnameinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1342,12'
          Dst:             getnameinfo
    - functionName:    krb5int_gai_strerror
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gai_strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1334,12'
          Dst:             gai_strerror
    - functionName:    gai_strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_fake_freeaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1298
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - system_freeaddrinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1296,5'
          Dst:             system_freeaddrinfo
    - functionName:    krb5int_freeaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1328
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - my_fake_freeaddrinfo
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1329,5'
          Dst:             my_fake_freeaddrinfo
    - functionName:    my_fake_getaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - system_getaddrinfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1134,13'
          Dst:             system_getaddrinfo
    - functionName:    krb5int_getaddrinfo
      functionSourceFile: '/src/krb5/src/util/support/fake-addrinfo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1324
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - my_fake_getaddrinfo
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'fake-addrinfo.c:1324,12'
          Dst:             my_fake_getaddrinfo
    - functionName:    krb5int_ucs4_to_utf8
      functionSourceFile: '/src/krb5/src/util/support/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          193
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_utf8_to_ucs4
      functionSourceFile: '/src/krb5/src/util/support/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          158
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_set_status
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_16_le
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_bytes
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - k5_input_set_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-input.h:72,9'
          Dst:             k5_input_set_status
    - functionName:    store_16_le
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_input_get_uint16_le
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_input_get_bytes
        - load_16_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-input.h:97,32'
          Dst:             k5_input_get_bytes
        - Src:             '../../include/k5-input.h:98,32'
          Dst:             load_16_le
    - functionName:    k5_input_init
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-input.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_utf16le_to_utf8
      functionSourceFile: '/src/krb5/src/util/support/utf8_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          189
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_get_space
        - k5_buf_init_dynamic
        - k5_input_get_uint16_le
        - k5_input_init
        - krb5int_ucs4_to_utf8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8_conv.c:166,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'utf8_conv.c:167,5'
          Dst:             k5_input_init
        - Src:             'utf8_conv.c:171,15'
          Dst:             k5_input_get_uint16_le
        - Src:             'utf8_conv.c:176,19'
          Dst:             k5_input_get_uint16_le
        - Src:             'utf8_conv.c:184,17'
          Dst:             krb5int_ucs4_to_utf8
        - Src:             'utf8_conv.c:185,13'
          Dst:             k5_buf_get_space
        - Src:             'utf8_conv.c:188,15'
          Dst:             krb5int_ucs4_to_utf8
        - Src:             'utf8_conv.c:194,17'
          Dst:             k5_buf_cstring
        - Src:             'utf8_conv.c:198,5'
          Dst:             k5_buf_free
    - functionName:    k5_buf_add_uint16_le
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-buf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_buf_get_space
        - store_16_le
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../include/k5-buf.h:135,15'
          Dst:             k5_buf_get_space
        - Src:             '../../include/k5-buf.h:138,9'
          Dst:             store_16_le
    - functionName:    k5_utf8_to_utf16le
      functionSourceFile: '/src/krb5/src/util/support/utf8_conv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          249
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - k5_buf_add_uint16_le
        - k5_buf_free
        - k5_buf_init_dynamic_zap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8_conv.c:103,5'
          Dst:             k5_buf_init_dynamic_zap
        - Src:             'utf8_conv.c:130,13'
          Dst:             k5_buf_add_uint16_le
        - Src:             'utf8_conv.c:134,13'
          Dst:             k5_buf_add_uint16_le
        - Src:             'utf8_conv.c:135,13'
          Dst:             k5_buf_add_uint16_le
        - Src:             'utf8_conv.c:147,5'
          Dst:             k5_buf_free
    - functionName:    k5_path_isabs
      functionSourceFile: '/src/krb5/src/util/support/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_path_join
      functionSourceFile: '/src/krb5/src/util/support/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          115
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - asprintf
        - k5_path_isabs
        - strdup
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'path.c:127,9'
          Dst:             k5_path_isabs
        - Src:             'path.c:129,16'
          Dst:             strdup
        - Src:             'path.c:139,19'
          Dst:             strlen
        - Src:             'path.c:141,19'
          Dst:             asprintf
        - Src:             'path.c:143,19'
          Dst:             asprintf
    - functionName:    find_sep
      functionSourceFile: '/src/krb5/src/util/support/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strrchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'path.c:61,12'
          Dst:             strrchr
    - functionName:    k5_path_split
      functionSourceFile: '/src/krb5/src/util/support/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          215
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - find_sep
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'path.c:83,11'
          Dst:             find_sep
        - Src:             'path.c:106,20'
          Dst:             strdup
    - functionName:    parse_array_item
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 940
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_array_add
        - k5_json_release
        - parse_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:944,11'
          Dst:             parse_value
        - Src:             'json.c:947,11'
          Dst:             k5_json_array_add
        - Src:             'json.c:948,5'
          Dst:             k5_json_release
    - functionName:    parse_value
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          312
      EdgeCount:       66
      CyclomaticComplexity: 20
      functionsReached:
        - is_digit
        - k5_json_bool_create
        - k5_json_null_create
        - k5_json_string_create
        - parse_array
        - parse_number
        - parse_object
        - parse_string
        - strncmp
        - white_spaces
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:1015,9'
          Dst:             white_spaces
        - Src:             'json.c:1019,15'
          Dst:             parse_string
        - Src:             'json.c:1022,15'
          Dst:             k5_json_string_create
        - Src:             'json.c:1030,15'
          Dst:             parse_object
        - Src:             'json.c:1038,15'
          Dst:             parse_array
        - Src:             'json.c:1041,16'
          Dst:             is_digit
        - Src:             'json.c:1042,15'
          Dst:             parse_number
        - Src:             'json.c:1046,16'
          Dst:             strncmp
        - Src:             'json.c:1048,15'
          Dst:             k5_json_null_create
        - Src:             'json.c:1052,16'
          Dst:             strncmp
        - Src:             'json.c:1054,15'
          Dst:             k5_json_bool_create
        - Src:             'json.c:1058,16'
          Dst:             strncmp
        - Src:             'json.c:1060,15'
          Dst:             k5_json_bool_create
    - functionName:    k5_json_array_add
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_json_retain
        - realloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:240,15'
          Dst:             realloc
        - Src:             'json.c:246,35'
          Dst:             k5_json_retain
    - functionName:    k5_json_release
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    59
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:118,5'
          Dst:             __assert_fail
    - functionName:    k5_json_retain
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:105,5'
          Dst:             __assert_fail
    - functionName:    white_spaces
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          79
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_string
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          320
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - hexval
        - is_hex_digit
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:821,30'
          Dst:             is_hex_digit
        - Src:             'json.c:821,52'
          Dst:             is_hex_digit
        - Src:             'json.c:822,17'
          Dst:             is_hex_digit
        - Src:             'json.c:822,39'
          Dst:             is_hex_digit
        - Src:             'json.c:823,25'
          Dst:             hexval
        - Src:             'json.c:823,48'
          Dst:             hexval
        - Src:             'json.c:824,22'
          Dst:             hexval
        - Src:             'json.c:824,43'
          Dst:             hexval
        - Src:             'json.c:835,21'
          Dst:             strchr
    - functionName:    k5_json_string_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - k5_json_string_create_len
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:490,47'
          Dst:             strlen
        - Src:             'json.c:490,12'
          Dst:             k5_json_string_create_len
    - functionName:    parse_object
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          156
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - k5_json_object_create
        - k5_json_release
        - parse_object_association
        - white_spaces
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:902,9'
          Dst:             white_spaces
        - Src:             'json.c:905,11'
          Dst:             k5_json_object_create
        - Src:             'json.c:912,19'
          Dst:             parse_object_association
        - Src:             'json.c:914,17'
          Dst:             k5_json_release
        - Src:             'json.c:917,17'
          Dst:             white_spaces
        - Src:             'json.c:924,17'
          Dst:             white_spaces
        - Src:             'json.c:933,5'
          Dst:             k5_json_release
    - functionName:    parse_array
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          156
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - k5_json_array_create
        - k5_json_release
        - parse_array_item
        - white_spaces
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:965,9'
          Dst:             white_spaces
        - Src:             'json.c:968,11'
          Dst:             k5_json_array_create
        - Src:             'json.c:975,19'
          Dst:             parse_array_item
        - Src:             'json.c:977,17'
          Dst:             k5_json_release
        - Src:             'json.c:980,17'
          Dst:             white_spaces
        - Src:             'json.c:987,17'
          Dst:             white_spaces
        - Src:             'json.c:996,5'
          Dst:             k5_json_release
    - functionName:    is_digit
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_number
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          138
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - is_digit
        - k5_json_number_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:768,10'
          Dst:             is_digit
        - Src:             'json.c:773,12'
          Dst:             is_digit
        - Src:             'json.c:784,12'
          Dst:             k5_json_number_create
    - functionName:    k5_json_null_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:164,16'
          Dst:             alloc_value
    - functionName:    k5_json_bool_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - alloc_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:185,9'
          Dst:             alloc_value
    - functionName:    alloc_value
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:147,28'
          Dst:             calloc
    - functionName:    k5_json_number_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - alloc_value
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:561,9'
          Dst:             alloc_value
    - functionName:    k5_json_array_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_value
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:225,16'
          Dst:             alloc_value
    - functionName:    array_dealloc
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_release
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:214,9'
          Dst:             k5_json_release
    - functionName:    k5_json_object_create
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_value
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:392,16'
          Dst:             alloc_value
    - functionName:    parse_object_association
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 887
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - k5_json_object_set
        - k5_json_release
        - parse_string
        - parse_value
        - white_spaces
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:862,11'
          Dst:             parse_string
        - Src:             'json.c:865,9'
          Dst:             white_spaces
        - Src:             'json.c:870,9'
          Dst:             white_spaces
        - Src:             'json.c:872,11'
          Dst:             parse_value
        - Src:             'json.c:879,11'
          Dst:             k5_json_object_set
        - Src:             'json.c:881,5'
          Dst:             k5_json_release
    - functionName:    k5_json_object_set
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          218
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - k5_json_release
        - k5_json_retain
        - object_search
        - realloc
        - strdup
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:432,11'
          Dst:             object_search
        - Src:             'json.c:434,9'
          Dst:             k5_json_release
        - Src:             'json.c:443,26'
          Dst:             k5_json_retain
        - Src:             'json.c:457,15'
          Dst:             realloc
        - Src:             'json.c:463,34'
          Dst:             strdup
        - Src:             'json.c:466,36'
          Dst:             k5_json_retain
    - functionName:    object_search
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:409,13'
          Dst:             strcmp
    - functionName:    object_dealloc
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - k5_json_release
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:380,9'
          Dst:             k5_json_release
    - functionName:    k5_json_string_create_len
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - alloc_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:500,9'
          Dst:             alloc_value
    - functionName:    is_hex_digit
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_digit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:738,12'
          Dst:             is_digit
    - functionName:    hexval
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - is_digit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:745,9'
          Dst:             is_digit
        - Src:             'json.c:749,5'
          Dst:             abort
    - functionName:    encode_string
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_buf_add_len
        - strchr
        - strcspn
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:590,5'
          Dst:             k5_buf_add
        - Src:             'json.c:592,13'
          Dst:             strcspn
        - Src:             'json.c:593,9'
          Dst:             k5_buf_add_len
        - Src:             'json.c:597,9'
          Dst:             k5_buf_add
        - Src:             'json.c:598,13'
          Dst:             strchr
        - Src:             'json.c:600,13'
          Dst:             k5_buf_add_len
        - Src:             'json.c:602,13'
          Dst:             k5_buf_add_fmt
        - Src:             'json.c:605,5'
          Dst:             k5_buf_add
    - functionName:    encode_obj_entry
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - encode_string
        - encode_value
        - k5_buf_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:624,9'
          Dst:             k5_buf_add
        - Src:             'json.c:625,5'
          Dst:             encode_string
        - Src:             'json.c:626,5'
          Dst:             k5_buf_add
        - Src:             'json.c:627,14'
          Dst:             encode_value
    - functionName:    encode_value
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          157
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - encode_obj_entry
        - encode_string
        - encode_value
        - k5_buf_add
        - k5_buf_add_fmt
        - k5_json_array_get
        - k5_json_array_length
        - k5_json_bool_value
        - k5_json_get_tid
        - k5_json_number_value
        - k5_json_object_iterate
        - k5_json_string_utf8
      functionUses:    3
      BranchProfiles:
        - Branch String:   'json.c:642,5'
          Branch Sides:    []
      Callsites:
        - Src:             'json.c:641,12'
          Dst:             k5_json_get_tid
        - Src:             'json.c:644,9'
          Dst:             k5_buf_add
        - Src:             'json.c:645,15'
          Dst:             k5_json_array_length
        - Src:             'json.c:648,17'
          Dst:             k5_buf_add
        - Src:             'json.c:649,37'
          Dst:             k5_json_array_get
        - Src:             'json.c:649,19'
          Dst:             encode_value
        - Src:             'json.c:653,9'
          Dst:             k5_buf_add
        - Src:             'json.c:657,9'
          Dst:             k5_buf_add
        - Src:             'json.c:661,9'
          Dst:             k5_json_object_iterate
        - Src:             'json.c:661,9'
          Dst:             encode_obj_entry
        - Src:             'json.c:662,9'
          Dst:             k5_buf_add
        - Src:             'json.c:666,28'
          Dst:             k5_json_string_utf8
        - Src:             'json.c:666,9'
          Dst:             encode_string
        - Src:             'json.c:670,37'
          Dst:             k5_json_number_value
        - Src:             'json.c:670,9'
          Dst:             k5_buf_add_fmt
        - Src:             'json.c:674,9'
          Dst:             k5_buf_add
        - Src:             'json.c:678,25'
          Dst:             k5_json_bool_value
        - Src:             'json.c:678,9'
          Dst:             k5_buf_add
    - functionName:    k5_json_get_tid
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_isa
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:139,21'
          Dst:             get_isa
    - functionName:    k5_json_array_length
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_array_get
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:260,9'
          Dst:             abort
    - functionName:    k5_json_object_iterate
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_string_utf8
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_number_value
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_bool_value
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_isa
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_decode
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1073
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - k5_json_release
        - parse_value
        - white_spaces
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:1081,11'
          Dst:             parse_value
        - Src:             'json.c:1084,9'
          Dst:             white_spaces
        - Src:             'json.c:1085,9'
          Dst:             k5_json_release
    - functionName:    k5_json_encode
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_value
        - k5_buf_cstring
        - k5_buf_free
        - k5_buf_init_dynamic
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:693,5'
          Dst:             k5_buf_init_dynamic
        - Src:             'json.c:694,11'
          Dst:             encode_value
        - Src:             'json.c:696,9'
          Dst:             k5_buf_free
        - Src:             'json.c:699,17'
          Dst:             k5_buf_cstring
    - functionName:    k5_json_string_unbase64
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_base64_decode
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:541,12'
          Dst:             k5_base64_decode
    - functionName:    k5_json_object_get
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - object_search
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:420,11'
          Dst:             object_search
    - functionName:    k5_json_object_count
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_json_string_create_base64
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - k5_base64_encode
        - k5_json_string_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:518,14'
          Dst:             k5_base64_encode
        - Src:             'json.c:521,11'
          Dst:             k5_json_string_create
    - functionName:    k5_json_array_fmt
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          394
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - k5_json_array_add
        - k5_json_array_create
        - k5_json_bool_create
        - k5_json_null_create
        - k5_json_number_create
        - k5_json_release
        - k5_json_retain
        - k5_json_string_create
        - k5_json_string_create_base64
      functionUses:    7
      BranchProfiles:
        - Branch String:   'json.c:295,9'
          Branch Sides:    []
      Callsites:
        - Src:             'json.c:291,9'
          Dst:             k5_json_array_create
        - Src:             'json.c:297,19'
          Dst:             k5_json_retain
        - Src:             'json.c:300,17'
          Dst:             k5_json_null_create
        - Src:             'json.c:306,17'
          Dst:             k5_json_bool_create
        - Src:             'json.c:312,17'
          Dst:             k5_json_number_create
        - Src:             'json.c:318,17'
          Dst:             k5_json_number_create
        - Src:             'json.c:325,21'
          Dst:             k5_json_null_create
        - Src:             'json.c:329,21'
          Dst:             k5_json_string_create
        - Src:             'json.c:337,17'
          Dst:             k5_json_string_create_base64
        - Src:             'json.c:344,15'
          Dst:             k5_json_array_add
        - Src:             'json.c:345,9'
          Dst:             k5_json_release
        - Src:             'json.c:355,5'
          Dst:             k5_json_release
    - functionName:    k5_json_array_set
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - k5_json_release
        - k5_json_retain
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:268,9'
          Dst:             abort
        - Src:             'json.c:269,5'
          Dst:             k5_json_release
        - Src:             'json.c:270,26'
          Dst:             k5_json_retain
    - functionName:    k5_json_null_create_val
      functionSourceFile: '/src/krb5/src/util/support/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_value
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'json.c:171,16'
          Dst:             alloc_value
    - functionName:    rotl64
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sipround
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          85
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rotl64
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:64,11'
          Dst:             rotl64
        - Src:             'hashtab.c:65,11'
          Dst:             rotl64
        - Src:             'hashtab.c:66,11'
          Dst:             rotl64
        - Src:             'hashtab.c:69,11'
          Dst:             rotl64
        - Src:             'hashtab.c:70,11'
          Dst:             rotl64
        - Src:             'hashtab.c:71,11'
          Dst:             rotl64
    - functionName:    k5_hashtab_get
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - siphash24
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:247,9'
          Dst:             siphash24
        - Src:             'hashtab.c:249,34'
          Dst:             memcmp
    - functionName:    siphash24
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          125
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - load_64_le
        - sipround
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:89,14'
          Dst:             load_64_le
        - Src:             'hashtab.c:91,9'
          Dst:             sipround
        - Src:             'hashtab.c:92,9'
          Dst:             sipround
        - Src:             'hashtab.c:100,10'
          Dst:             load_64_le
        - Src:             'hashtab.c:102,5'
          Dst:             sipround
        - Src:             'hashtab.c:103,5'
          Dst:             sipround
        - Src:             'hashtab.c:108,5'
          Dst:             sipround
        - Src:             'hashtab.c:109,5'
          Dst:             sipround
        - Src:             'hashtab.c:110,5'
          Dst:             sipround
        - Src:             'hashtab.c:111,5'
          Dst:             sipround
    - functionName:    load_64_le
      functionSourceFile: '/src/krb5/src/util/support/../../include/k5-platform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_hashtab_remove
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          174
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
        - siphash24
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:229,9'
          Dst:             siphash24
        - Src:             'hashtab.c:231,34'
          Dst:             memcmp
    - functionName:    resize_table
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          145
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - siphash24
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:178,18'
          Dst:             calloc
        - Src:             'hashtab.c:186,17'
          Dst:             siphash24
    - functionName:    k5_hashtab_add
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - resize_table
        - siphash24
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:205,13'
          Dst:             resize_table
        - Src:             'hashtab.c:216,9'
          Dst:             siphash24
    - functionName:    k5_hashtab_free
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_hashtab_create
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - load_64_le
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:137,18'
          Dst:             load_64_le
        - Src:             'hashtab.c:138,18'
          Dst:             load_64_le
        - Src:             'hashtab.c:144,19'
          Dst:             calloc
    - functionName:    k5_siphash24
      functionSourceFile: '/src/krb5/src/util/support/hashtab.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - load_64_le
        - siphash24
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashtab.c:119,19'
          Dst:             load_64_le
        - Src:             'hashtab.c:119,42'
          Dst:             load_64_le
        - Src:             'hashtab.c:121,12'
          Dst:             siphash24
    - functionName:    k5_bcmp
      functionSourceFile: '/src/krb5/src/util/support/bcmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          54
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    k5_strerror_r
      functionSourceFile: '/src/krb5/src/util/support/strerror_r.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - krb5int_strlcpy
        - strerror_r
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'strerror_r.c:77,11'
          Dst:             strerror_r
        - Src:             'strerror_r.c:79,13'
          Dst:             krb5int_strlcpy
        - Src:             'strerror_r.c:80,13'
          Dst:             __errno_location
    - functionName:    strerror_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compare_with_strcmp
      functionSourceFile: '/src/krb5/src/util/support/dir_filenames.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dir_filenames.c:66,12'
          Dst:             strcmp
    - functionName:    add_filename
      functionSourceFile: '/src/krb5/src/util/support/dir_filenames.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dir_filenames.c:51,15'
          Dst:             realloc
        - Src:             'dir_filenames.c:55,26'
          Dst:             strdup
    - functionName:    k5_dir_filenames
      functionSourceFile: '/src/krb5/src/util/support/dir_filenames.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - add_filename
        - closedir
        - compare_with_strcmp
        - k5_free_filenames
        - opendir
        - qsort
        - readdir
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dir_filenames.c:117,11'
          Dst:             opendir
        - Src:             'dir_filenames.c:121,19'
          Dst:             readdir
        - Src:             'dir_filenames.c:122,13'
          Dst:             add_filename
        - Src:             'dir_filenames.c:123,13'
          Dst:             k5_free_filenames
        - Src:             'dir_filenames.c:124,13'
          Dst:             closedir
        - Src:             'dir_filenames.c:129,5'
          Dst:             closedir
        - Src:             'dir_filenames.c:130,5'
          Dst:             qsort
        - Src:             'dir_filenames.c:130,5'
          Dst:             compare_with_strcmp
    - functionName:    k5_free_filenames
      functionSourceFile: '/src/krb5/src/util/support/dir_filenames.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qsort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    krb5int_strlcat
      functionSourceFile: '/src/krb5/src/util/support/strlcpy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          127
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strlcpy.c:77,17'
          Dst:             strlen
    - functionName:    krb5int_strlcpy
      functionSourceFile: '/src/krb5/src/util/support/strlcpy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_token
      functionSourceFile: '/src/krb5/src/util/support/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'base64.c:99,17'
          Dst:             strchr
    - functionName:    k5_base64_decode
      functionSourceFile: '/src/krb5/src/util/support/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          146
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - decode_token
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'base64.c:120,11'
          Dst:             strlen
        - Src:             'base64.c:131,15'
          Dst:             decode_token
    - functionName:    k5_base64_encode
      functionSourceFile: '/src/krb5/src/util/support/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          198
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
...
